2009-09-18 63 views
1

我有一个存储库类,它接受一个名为“TestDB”的ObjectContext。当我启动我的Web应用程序时,出现“无法加载指定的元数据资源”,就像它不再从我的web.config文件中获取连接设置一样。在实体框架中使用Ninject

这是我的代码片段。

[Inject] 
public SqlCatelogRepository(){ 
    _dataContext = new SQLDb(); 
    //EF Entity, should pickup connection settings from web.config 
} 

一旦得到了什么是对那里发生的,我想在我的DataContenxt通过,但我似乎无法环绕这个应该是什么样子的Ninject映射我的头。

+0

这也可能有助于:http://stackoverflow.com/questions/1245517/ninject-binding – 2009-10-28 15:03:19

+0

您可以更新更多代码的问题(例如Ninject Mapping/SqlCateglogRepository类) – 2009-11-03 19:21:58

回答

1

尝试类似:

[Inject] 
public SqlCatelogRepository(){ 
    _dataContext = kernel.Get<SQLDb>(); 
    //EF Entity, should pickup connection settings from web.config 
} 

这将给NInject机会拦截您激活。然后你的映射就可以应用了。

你可能要检查出“服务定位器”的办法,内特写道:http://kohari.org/2008/06/18/playing-nice-with-service-locators