显示用户全名而不是用户名

发布于 2024-12-03 22:50:15 字数 339 浏览 1 评论 0原文

我正在使用MVC3。我需要在成功登录后在主页中显示用户的全名,即欢迎杰克。 全名位于另一个名为“UserProfile”的表中。 在传统的 ASP.NET Web 表单中,我可以轻松做到这一点。但我不知道如何在 MVC 中做到这一点..!! 我有一个部分视图名称“LogOnUserControl.ascx”。在此部分视图中,我有以下代码显示登录用户名。

Welcome <strong><%: Page.User.Identity.Name %></strong>!

如果右键单击它并单击“转到控制器”,它不会去任何地方。 谁能指导我如何获取用户的原始姓名?

I am using MVC3. I need to display the user's full name in the master page after the successful login i.e. welcome Jack.
The full name is in another table called 'UserProfile'.
In the traditional asp.net web forms, I could do that easily. But I have no clue how to do that in MVC..!!
I have a partial view name 'LogOnUserControl.ascx'. In this partial view I have the following code that shows the login user name.

Welcome <strong><%: Page.User.Identity.Name %></strong>!

If the right click on this and click on 'go to controller', it does not go anywhere.
Can anyone please guide me about how to get the users original name??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

没有心的人 2024-12-10 22:50:15

对于这种情况,您可以使用子操作。假设您已经设置了身份验证,您可以在子操作中查找 UserProfile 表并使用表示用户数据的视图模型呈现部分视图。

因此,在您的母版页中,您将拥有:

<%= Html.RenderAction("UserLogonInfo", "Account")%>

然后您可以拥有一个带有子操作的帐户控制器,它将获取用户数据并呈现它:

    [ChildActionOnly]
    public PartialViewResult UserLogonInfo()
    {
        IPrincipal principal = HttpContext.User;
        LogonInfoViewModel model = UserDataRepository.GetUserLogonInfo(principal);
        return PartialView(model);
    }

For this case you can use a child action. Assuming that you already have set up your authentication you can in your child action lookup into the UserProfile table and render a partial view with a view model representing the user data.

So in your Master Page you will have:

<%= Html.RenderAction("UserLogonInfo", "Account")%>

Then you can have an account controller with a child action which will get user data and render it:

    [ChildActionOnly]
    public PartialViewResult UserLogonInfo()
    {
        IPrincipal principal = HttpContext.User;
        LogonInfoViewModel model = UserDataRepository.GetUserLogonInfo(principal);
        return PartialView(model);
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文