باستخدام page.user.identity.name في mvc3
-
26-09-2019 - |
سؤال
في MVC2 لقد استخدمت Page.User.Identity.Name
باستخدام <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
كيف يمكنني استخدام الشيء نفسه في MVC3؟
المحلول
يمكنك دائمًا فعل شيء مثل:
@Html.ViewContext.HttpContext.User.Identity.Name
لكن لا.
عادة لا ينبغي أن تحاول طريقة العرض إحضار هذه المعلومات. هناك لعرض أي معلومات يتم تمريرها بواسطة وحدة التحكم. يجب أن يتم كتابتها بقوة إلى فئة نموذجية يتم تمريرها بواسطة إجراء وحدة تحكم.
لذلك في إجراء وحدة التحكم مما يجعل هذا الرأي:
[Authorize]
public ActionResult Index()
{
var model = new MyViewModel
{
Username = User.Identity.Name
}
return View(model);
}
الآن داخل العرض ، لا تتردد في استخدام هذه المعلومات:
@Model.Username
نصائح أخرى
MVC 2
<%: this.Page.User.Identity.Name %>
MVC 3
@this.User.Identity.Name
كان لي نفس المشكلة. انا إستعملت هذا البرنامج التعليمي لحل هذه القضية.
باختصار ، في رأيك ، ضع هذا الرمز:
@Context.User.Identity.Name
فقط تأكد من تعيين المشروع للمصادقة باستخدام Windows.
لا تنتمي إلى StackOverflow