如何使用查询字符串将UserID或UserName传递到asp.net成员功能中的另一个页面
本文关键字:功能 成员 net asp 另一个 字符串 查询 何使用 UserID UserName | 更新日期: 2023-09-27 18:26:12
我在项目中使用了asp.net成员身份功能。我在"manage-users.aspx"中的代码是;
<asp:GridView runat="server" ID="gridUserAccounts" SkinID="gridviewSkin" PageSize="5">
<Columns>
<asp:BoundField HeaderText="User Name" DataField="UserName" />
<asp:BoundField HeaderText="Email" SortExpression="Email" DataField="Email" />
<asp:BoundField HeaderText="Last Login Date" SortExpression="LastLoginDate" DataField="LastLoginDate" />
<asp:BoundField HeaderText="Last Activity Date" SortExpression="LastActivityDate" DataField="LastActivityDate" />
<asp:TemplateField>
<ItemTemplate>
<asp:HyperLink runat="server" NavigateUrl='<%# "manage-user-detail.aspx?UserID=" %>' ID="linkNavigate" Text="View Detail" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我为这个网格视图编写的代码是这样的;
if (!Page.IsPostBack)
{
gridUserAccounts.DataSource = Membership.GetAllUsers();
gridUserAccounts.DataBind();
}
现在,我的问题是"如何将所选用户ID传递到另一个页面,即使用此"项目模板"中的querystring(在NavigateUrl属性中)管理用户详细信息.aspx页面
<asp:TemplateField>
<ItemTemplate>
<asp:HyperLink runat="server" NavigateUrl='<%# "manage-user-detail.aspx?UserID=" %>' ID="linkNavigate" Text="View Detail" />
</ItemTemplate>
</asp:TemplateField>
以及"我如何在‘manageuserdetail.aspx’页面的fromview中显示用户详细信息(先捕获querystring,然后再捕获)并显示结果。任何帮助都是值得感激的。
试试这个:
NavigateUrl='<%# string.Format("manage-user-detail.aspx?UserID={0}",Eval("UserID")) %>'
您可以通过以下方式访问用户名:
HttpContext.Current.User.Identity.Name
更新
如果您想要特定用户的数据,则需要通过用户名检索MembershipUser
实例
var userName = "someUserName";
var membershipUser = System.Web.Security.Membership.GetUser(userName);
以下是关于MembershipUser
类的可用信息:
http://msdn.microsoft.com/en-us/library/system.web.security.membershipuser.aspx