Tôi có một ứng dụng MEF (Microsoft Extension Framework) để tải một số assembly từ một thư mục. Tôi cần liệt kê các hội đồng sản xuất bất kỳ hàng xuất khẩu nào cho đơn xin của tôi.Làm thế nào để liệt kê các assembly trong AggregateCatalog hoặc DirectoryCatalog trong MEF?
Một cách để thực hiện điều này là liệt kê các mục nhập gọi số GetExportedObject().GetType().Assembly
. Nhưng nó sẽ được sạch hơn để làm điều này mà không cần instantiation nhập khẩu. Có cách nào để có được lắp ráp nạp từ một cửa hàng hoặc bất cứ điều gì khác?
Tôi cần hội đồng để có được các thuộc tính của họ như bản quyền, phiên bản, tên và như vậy. Thư mục của tôi có thể chứa cả hai hội đồng với xuất khẩu và không có những người thân, nhưng tôi chỉ cần hội đồng thỏa mãn bất kỳ hàng nhập khẩu nào trong ứng dụng.
Tôi đã cập nhật câu hỏi về lý do tại sao tôi cần hội đồng. Trên thực tế, thậm chí có DirectoryCatalog trả lại các hội đồng sẽ không giải quyết mục tiêu của tôi bởi vì danh sách có thể chứa dll MEF mà không có gì để làm với nhập khẩu _my_. Nếu tôi có thể lấy assembly từ Export mà không gọi GetExportedObject, hoặc có assembly nhập khẩu thỏa mãn theo cách khác ... –
Tôi sẽ bổ sung thêm rằng tôi cần loại chức năng tương tự này.Tôi đang tích hợp với một hệ thống khác sử dụng BuildManager và tôi muốn thêm các assembly mà tôi đang sử dụng với MEF vào BuildManager. –