Получение претензий от контроллера – как?

Мне сказали, что если я хочу получить претензию в контроллере, я могу сделать что-то вроде:

IClaimsIdentity u = (IClaimsIdentity) this.HttpContext.User.Identity;
var ni = u.Claims.First(x => x.ClaimType == ClaimTypes.NameIdentifier).Value;

однако это нарушает разделение между представлениями и контроллерами. контроллер может быть вызван в контексте, где нет HttpContext - так как же правильно это сделать?

ТИА - Эккис


person ekkis    schedule 30.07.2011    source источник


Ответы (1)


Просто оставьте HttpContext и используйте Пользователь свойство контроллера напрямую:

var u = (IClaimsIdentity)this.User.Identity;
person Peter    schedule 30.07.2011