// In Global asax
DirectoryCatalog catalog = new DirectoryCatalog(System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin"));
CompositionContainer container = new CompositionContainer(catalog);
// do not want to compose at every instance when use Import attribute.
container.ComposeParts(this);
// add all external library (.dll)
container.ComposeParts(container);
// Index.aspx page
public partial Index: Page{
[Import]
private c1 object1;
protected void OnLoadPage
{
if (object1== null)
thrown Error("mef failed, why")
}
}
// External library Library1
[Export(typeOf(c1))]
public class c1{}
// External library Library2
[Export(typeOf(c2))]
public class c2{}
为什么object1为空?
如何编写来自Global asax或简单的所有类来进行一些asp.net bootstrap延迟加载?
我不想在每个构造函数中组成部分。如何在Global asax中首先编写所有程序集或类?我的[导出]都在外部库类中。主站点项目参考了所有.dll项目。
我不确定我的问题是否正确,对不起。
Project是简单的asp.net(没有MVC),带有带用户控件的外部库。