簡體   English   中英

在MVC的ActionExecutedContext上獲取用戶名?

[英]Get username on ActionExecutedContext for MVC?

如何獲取MVC中當前登錄用戶的名稱? 我嘗試下面的代碼,我可以獲取日期和方法名,但不能獲取用戶名。

public void OnActionExecuted(ActionExecutedContext filterContext)
{
    AcibademUniversitesiDBEntities model = new AcibademUniversitesiDBEntities();
    Logging logbilgi = new Logging();

    logbilgi.date= DateTime.Now.ToString();
    logbilgi.Method = filterContext.ActionDescriptor.ActionName;
    logbilgi.text= filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;
    //logbilgi.user= filterContext.RequestContext.HttpContext.User.Identity.Name;
    //logbilgi.user= filterContext.HttpContext.User.Identity.Name;
    logbilgi.user= HttpContext.Current.User.Identity.Name;
    model.Logging.Add(logbilgi);
    model.SaveChanges();
}

public void OnActionExecuting(ActionExecutingContext filterContext)
{
    AcibademUniversitesiDBEntities model = new AcibademUniversitesiDBEntities();
    Logging logbilgi = new Logging();

    logbilgi.date= DateTime.Now.ToString();
    logbilgi.Method = filterContext.ActionDescriptor.ActionName;
    logbilgi.text= filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;
    //logbilgi.user= filterContext.RequestContext.HttpContext.User.Identity.Name;
    //logbilgi.user= filterContext.HttpContext.User.Identity.Name;
    logbilgi.user= HttpContext.Current.User.Identity.Name;
    model.Logging.Add(logbilgi);
    model.SaveChanges();
}

在Web.config中的system.web中,您是否有類似的東西?

<authentication mode="Windows" />

這是一個遠景,但您會嘗試嗎?

logbilgi.user = filterContext.HttpContext.Current.User.Identity.Name;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM