Технически вы должны поместить это в ViewData.Если вам нужно сделать это повсеместно, я бы порекомендовал создать подкласс Controller и переопределить OnActionExecuted, чтобы получить идентификатор пользователя текущего пользователя и поместить его в viewstate:
public class BaseController : Controller
{
protected override void OnActionExecuted( ActionExecutedContext filterContext )
{
ViewData["userid"] = Request.User.Identity;
}
}
Тогда ваш экстент контроллера BaseController
public class MyController : BaseController
{
public ActionResult View( int id )
{
return View();
}
}
Тогда, по вашему мнению, вы можете получить доступ к ViewData ["userid"]
<a href="mailto:<%=ViewData["userid"]%>@mycompany.com">Email User</a>
Все это, как говорится, если вы собираетесь осуществлять контроль доступа и тому подобное, выможет создать класс "LoggedInUser", к которому вы можете добавить вспомогательные методы.Затем вставьте его в сессию (при условии, что вы хорошо используете сессию).Вы можете сделать эту логику в методе Global.asax Session_Start.