tôi làm việc với MEF và tôi đang tìm cách thay đổi địa chỉ của các vị trí của các plugin bằng các phương tiện khác mà MEF tìm các plugin, tôi muốn thay đổi dòng nàyMEF Plugin tải từ thư mục
Assembly.LoadFrom(@"C:\julia\project\project.Plugin.Nav\bin\Debug\NavPlugin.dll")));
Tôi muốn xóa url này bởi vì tôi cần để triển khai ứng dụng của tôi trong một máy
Đây là chức năng của tôi:
public void AssembleCalculatorComponents()
{
try
{
//var catalog = new AssemblyCatalog(Assembly.GetExecutingAssembly());
//var container = new CompositionContainer(catalog);
//container.ComposeParts(this);
var catalog = new AggregateCatalog();
catalog.Catalogs.Add(new AssemblyCatalog(Assembly.LoadFrom(@"C:\yosra\project\project.Plugin.Nav\bin\Debug\NavPlugin.dll")));
var container = new CompositionContainer(catalog);
container.ComposeParts(this);
}
catch (Exception ex)
{
throw ex;
}
}
bạn có thể vui lòng giúp tôi?
Cảm ơn
Là một lưu ý phụ: bạn không nên sử dụng 'throw ex; 'trong khối catch của bạn (điều này" phá hủy "dấu vết ngăn xếp, tức là bạn sẽ không thể thực sự biết vị trí ngoại lệ thực sự đã xảy ra). Nếu bạn muốn ném lại ngoại lệ, chỉ cần sử dụng 'throw; '(không chỉ định lại ngoại lệ) - hoặc chỉ ** không ** bắt ngoại lệ nếu bạn không làm gì cả! –