c# - asp.net 显示列在 aspx 文件中
问题描述
在 Asp.Net SiteMaster 上,每当用户登录并成功时,用户的用户名都会显示在右上角。代码通常是这样的:
<li><a runat="server" href="~/Account/ManagePassword">Hello, <%: Context.User.Identity.GetUserName() %> !</a></li>
现在我想要发生的是,只要用户成功登录,就会发布用户的全名。
为此,我基本上在表下配置了 Asp.Net 的默认数据库AspNetUser
以添加额外的列,例如全名。当我尝试使用 更改上述代码时<%: Context.User.Identity.Fullname()
,出现错误
'IIdentity' does not contain a definition for 'Fullname' and no extension method 'Fullname' accepting a first argument of type 'IIdentity' could be found (are you missing a using directive or an assembly reference?)
如何使全名列填充显示名称?提前致谢。
解决方案
尝试这个 :
在母版页中添加:
<nav class="header-navbar navbar-expand-md navbar navbar-with-menu navbar-without-dd-arrow fixed-top navbar-semi-light">
<div class="navbar-wrapper">
<div class="navbar-container content">
<div class="collapse navbar-collapse show" id="navbar-mobile">
<ul class="nav navbar-nav mr-auto float-left">
<li class="nav-item mobile-menu d-md-none mr-auto"><a class="nav-link nav-menu-main menu-toggle hidden-xs" href="#"><i class="ft-menu font-large-1"></i></a></li>
<li class="nav-item d-none d-md-block"><a class="nav-link nav-menu-main menu-toggle hidden-xs" href="#"><i class="ft-menu"></i></a></li>
<li class="nav-item d-none d-md-block"><a class="nav-link nav-link-expand" href="#"><i class="ficon ft-maximize"></i></a></li>
</ul>
<ul class="nav navbar-nav float-right">
<li class="nav-item"><span class="user-name text-bold-700 ml-1">
<asp:Label ID="UserName" runat="server" Text="" CssClass="form-control" Style="background: none !important; color: white !important; border: none!important"></asp:Label></span></li>
<li class="dropdown dropdown-user nav-item">
<a class="dropdown-toggle nav-link dropdown-user-link" href="#" data-toggle="dropdown">
<span class="avatar avatar-online">
<img src="../../images/Admin.png" alt="Admin" />
</a>
<div class="dropdown-menu dropdown-menu-right">
<div class="arrow_box_right">
<a class="dropdown-item" href="../../Logout.aspx"><i class="ft-power"></i>Logout</a>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</nav>
C#代码:
您应该检查会话值是否存在会话,然后它将显示名称,否则如果会话为空,则重定向到登录页面
protected void Page_Load(object sender, EventArgs e)
{
if (Session["User_ID"] == null)
{
Response.Redirect("~/Default.aspx");
}
else
{
UserName.Text = Session["Employee_Name"].ToString() + " (" + Session["User_ID"].ToString() + ")";
}
}
推荐阅读
- c# - 获取 c# 的碰撞形状的高度(不是 gdscript)
- html - 是否可以为 html 页面内的链接创建条件逻辑
- ruby - Lambda ArgumentError:找不到登录名——扩展“~”
- c++ - 无法使用来自 GtkSpinButton 小部件的用户输入修改全局整数变量
- c - cgo 将 gobytes 复制到 c 数组中
- flutter - 颤振 - 类型“预订”不是“地图”类型的子类型
' 在类型转换中 - python - 根据字典的嵌套值在列表中查找嵌套字典的索引
- matplotlib - 端点上的 Matplotlib x 轴日期
- javascript - 如何根据元素列表以编程方式形成矩阵线?
- firebase - Firebase 函数不会部署在 Github Actions 上