首页 新闻 赞助 找找看

MVC 母版页 如何始终显示用户名

0
悬赏园豆:5 [已解决问题] 解决于 2015-12-01 12:58
 我目前是在 控制器上写  TempData["name"] = "刘德华";  然后在 _Layout.cshtml 上写  @TempData["name"] 你好!! 

但是我又担心 TempData只能使用一次. 能不能在每个视图上都能显示刘德华

大家还有没有更好的办法, 请赐教,谢谢. 

zhengyingcan的主页 zhengyingcan | 初学一级 | 园豆:12
提问于:2015-11-11 09:26
< >
分享
最佳答案
0

TempData好像是跳转页面后才显示的吧?比如说我修改一个详细信息,修改成功后直接跳转后列表页面,在重新点击修改,才会弹出提示,我记得好像是这样的,用TempData还不如用ViewData或者Session

如此低调的男人 | 小虾三级 |园豆:842 | 2015-11-11 10:24

用ViewData或者Session 不会显示在母版页上呢

zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 10:27

@zhengyingcan: 

如此低调的男人 | 园豆:842 (小虾三级) | 2015-11-11 10:32

@夕边日落: 这是图片是吧, 直接在母版页上获取Session对吧

zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 10:35

@zhengyingcan: 恩,截的图

如此低调的男人 | 园豆:842 (小虾三级) | 2015-11-11 15:03
其他回答(5)
0

如果我没记错的话,微软新建MVC项目出来的效果就是每一页都有登录的名字的,

你新建一个项目就能看到别人家的孩子是怎么做的了。

爱编程的大叔 | 园豆:30839 (高人七级) | 2015-11-11 09:36

能不能给一个示例,

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 09:52

@zhengyingcan: Visual Studio 新建MVC项目就有示例啊,你不要建立空项目,建立一个带有登陆的MVC项目就可以了,代码就在里面。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2015-11-11 10:04

@爱编程的大叔: 我的还是VS2010 ,上装的MVC4,  没有一个带登陆的MVC项目, 应该是我的版本太低了,能不能帮忙代码 粘贴一下,谢谢

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 10:12

@爱编程的大叔: 能不能发一个示例到我的邮箱380151700@qq.com万分感谢

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 10:26

@zhengyingcan: VS2010, MVC4.

@if (Request.IsAuthenticated) {
    <text>
        你好,@Html.ActionLink(User.Identity.Name, "Manage", "Account", routeValues: null, htmlAttributes: new { @class = "username", title = "管理" })!
        @using (Html.BeginForm("LogOff", "Account", FormMethod.Post, new { id = "logoutForm" })) {
            @Html.AntiForgeryToken()
            <a href="javascript:document.getElementById('logoutForm').submit()">注销</a>
        }
    </text>
} else {
    <ul>
        <li>@Html.ActionLink("注册", "Register", "Account", routeValues: null, htmlAttributes: new { id = "registerLink" })</li>
        <li>@Html.ActionLink("登录", "Login", "Account", routeValues: null, htmlAttributes: new { id = "loginLink" })</li>
    </ul>
}
支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2015-11-11 10:38

@爱编程的大叔: 万分感谢,!!!!

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 10:40

@爱编程的大叔: 真相在1L。

支持(0) 反对(0) 请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-11-11 11:05
0

写在 能访问的一个 类里类似    @UserContext.CurrentUser.UserName

class UserContext

{

     public static UserInfo CurrentUser

    {

           get{

//cache\findid

                    return ....

            }

     }

}

Qlin | 园豆:2403 (老鸟四级) | 2015-11-11 09:45

这个代码如何运用到母版页呢,有没有一个示例呢

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2015-11-11 09:55

@zhengyingcan:  显示      @UserContext.CurrentUser.UserName

支持(0) 反对(0) Qlin | 园豆:2403 (老鸟四级) | 2015-11-11 09:58
0

<a href="javascript:void(0);" onclick="addTab(this,2)"
title="用户信息" id='/User/UserInfo'>@User.Identity.Name</a>

收获园豆:5
绯村剑心丶 | 园豆:137 (初学一级) | 2015-11-11 11:05
0

真相在1L。

请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-11-11 11:05
0

放到Session里面

程序新青年 | 园豆:841 (小虾三级) | 2016-01-05 11:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册