AJ.*_*AJ. 1 asp.net-mvc ninject asp.net-mvc-4
我正在使用Ninject 3.0将服务层数据访问类注入我的控制器.我想在运行时将客户端的域用户ID添加到这些类,但无法弄清楚我应该使用哪种方法.目前我NinjectModule看起来像这样:
public class NinjectBindModule : NinjectModule
{
public override void Load()
{
Bind<ISomeRepo>().To<SomeRepo>();
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题,分两部分真的是:
WithConstructorArgument用来获取用户ID SomeRepo,还是其他东西(属性?).我是否可以在绑定模块中执行此操作,还是必须在内核或控制器级别执行此操作?public class NinjectBindModule : NinjectModule
{
public override void Load()
{
Bind<ISomeRepo>().To<SomeRepo>();
Bind<IPrincipal>()
.ToMethod(ctx => HttpContext.Current.User)
.InRequestScope();
}
}
Run Code Online (Sandbox Code Playgroud)
然后:
public class SomeRepo : ISomeRepo
{
private readonly IPrincipal _principal;
public SomeRepo(IPrincipal principal)
{
_principal = principal;
}
... some methods that will have access to the principal
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1022 次 |
| 最近记录: |