Примечание. Я включил .InRequestScope(), чтобы гарантировать, что значение метода кэшируется один раз для HTTP-запроса. Я бы рекомендовал сделать это, даже если вы используете механизм поставщика.
Ответ 2
Думаю, я понял:
public class PrincipalProvider : IProvider
{
public object Create(IContext context)
{
return HttpContext.Current.User;
}
public System.Type Type
{
get { return typeof(CustomPrincipal); }
}
}