1

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

这是我的代码片段。

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

一旦了解那里发生的事情,我想传递我的 DataContenxt,但我似乎无法理解这在 Ninject 映射中应该如何看待。

4

1 回答 1

1

尝试类似:

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

这将使 NInject 有机会拦截您的激活。然后您的映射可以应用。

您可能想查看 Nate 所写的“服务定位器”方法:http: //kohari.org/2008/06/18/playing-nice-with-service-locators

于 2009-10-28T15:01:38.247 回答