ASP.NET MVC zeigt den Benutzernamen aus einem Profil an

Das Folgende ist dasEinlogge Benutzersteuerung über ein von Visual Studio erstelltes Standard-ASP.NET-MVC-Projekt LogOnUserControl.ascx):

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%
if (Request.IsAuthenticated) {
%>
Welcome <b><%: Page.User.Identity.Name %></b>!
[ <%: Html.ActionLink("Log Off", "LogOff", "Account") %> ]
<%
}
else {
%> 
[ <%: Html.ActionLink("Log On", "LogOn", "Account")%> ]
<%
}
%>

, das in eine Masterseite eingefügt wird:

<div id="logindisplay">
    <% Html.RenderPartial("LogOnUserControl"); %>
</div>

Das<%: Page.User.Identity.Name %> code zeigt dasBenutzernam des aktuell angemeldeten Benutzers.

Wie wird das @ des Benutzers angezeigFirstName stattdessen, was ist im Profil gespeichert?

Wir können es in einem Controller wie folgt lesen:

ViewData["FirstName"] = AccountProfile.CurrentUser.FirstName;

Wenn wir zum Beispiel versuchen, das so zu machen:

<%: ViewData["FirstName"] %>

It wird nur auf der Seite wiedergegeben, die vom Controller aufgerufen wurde, auf der dasViewData["FirstName"] Wert wurde zugewiesen.