Ninject 根据 Owin.Context.User.Identy 更改绑定
Ninject Alter Binding base on Owin.Context.User.Identy
我需要更改 ninject 基于 User.Identity 的绑定。
我有这样的场景:
基于我为自己的目的使用的用户 Actor 声明。
我必须在我的 class 构造函数中注入 Claims.Actor 的值,
我该怎么做?
public class C {
public C (string ActorValue) {
// code here
}
}
谢谢
这很容易,如果我理解正确的话:
kernel.Bind<C>().ToMethod(
ctx =>
{
// you can also do anything like HttpContext.Current.GetOwinContext() etc..
var id = HttpContext.Current?.User?.Identity?.Name ?? "not found";
return new C(id);
});
我需要更改 ninject 基于 User.Identity 的绑定。
我有这样的场景: 基于我为自己的目的使用的用户 Actor 声明。 我必须在我的 class 构造函数中注入 Claims.Actor 的值, 我该怎么做?
public class C {
public C (string ActorValue) {
// code here
}
}
谢谢
这很容易,如果我理解正确的话:
kernel.Bind<C>().ToMethod(
ctx =>
{
// you can also do anything like HttpContext.Current.GetOwinContext() etc..
var id = HttpContext.Current?.User?.Identity?.Name ?? "not found";
return new C(id);
});