我正在研究asp.net mvc 4。我正在尝试使用ninject和具有代码优先模型的存储库模式来实现依赖注入。
IMessage 存储库
public interface IMessageRepository
{
void IsMessageRead();
}
消息库
public class MessageRepository:IMessageRepository
{
string id="";
public MessageRepository(string idparam)
{
id=idparam;
}
EFMsgContext context=new EFMsgContext(id);
public void IsMessageRead()
{
...
}
}
EFMsg上下文
public class EFMsgContext:Dbcontext
{
public EFMsgContext(string id):base("MyContext")
{
//based on id i will construct a connection string from my database.
}
....
}
我的控制器
public class MYController:Controller
{
private IMessageRepository repo;
public MYController(IMessageRepository repoparam)
{
repo=repoparam;
}
public ActionResult Index()
{
repo.IsMessageRead();
}
}
我正在使用 Ninject 进行依赖注入我将我的接口与具体类绑定,例如,
ninjectKernel.Bind<IMessageRepository>().To<MessageRepository>();
在这里,我如何将构造函数参数传递给绑定,有没有办法在 ninjectcontrollerfactory 中编写构建连接字符串的逻辑。请指导我。