加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET C#将用户添加/更新到角色

发布时间:2020-12-16 07:31:43 所属栏目:asp.Net 来源:网络整理
导读:大家好我有一个页面显示住宿信息,然后是在DetailsView中创建该信息的人的UserID. 我还有一个按钮,应该看看UserID和单击时将该userID转换为用户名,以便我可以使用该用户名将人员角色更改为租用者.但是我不确定使用C#如何从详细信息视图中获取UserID进行转换并
大家好我有一个页面显示住宿信息,然后是在DetailsView中创建该信息的人的UserID.

我还有一个按钮,应该看看UserID和单击时将该userID转换为用户名,以便我可以使用该用户名将人员角色更改为租用者.但是我不确定使用C#如何从详细信息视图中获取UserID进行转换并更新角色.有任何想法吗?

标记

@Tim

这是我添加的代码:

public partial class adminonly_approval : System.Web.UI.Page
{
    protected void Page_Load(object sender,EventArgs e)
    {

    }

    void DetailsView1_ItemCommand(Object sender,DetailsViewCommandEventArgs e){
    if (e.CommandName == "SetToRenter")
    {
        // if UserID is in second row:
        DetailsViewRow row = DetailsView1.Rows[9];

        // Get the Username from the appropriate cell.
        // In this example,the Username is in the second cell  
        String UserID = row.Cells[9].Text;
        MembershipUser memUser = Membership.GetUser(UserID);
        Roles.AddUserToRole(memUser.UserName,"renter");
    }
}

我在详细信息视图下方的页面上添加了一个按钮,并将commandName设置为SetToRenter.当我点击按钮但它没有改变角色时.我是ASP和C#的新手,但需要此功能才能完成大学任务.
任何的想法?

解决方法

Membership.GetUser(UserId)

MembershipUser memUser = Membership.GetUser(UserId);
Roles.AddUserToRole(memUser.UserName,"Renter");

Roles.AddUserToRole

以下是有关如何获取DetailsView的BoundFields值的示例:
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.detailsview.itemcommand.aspx

您应该将Button的CommandName设置为其功能,并在代码隐藏中处理DetailsView.ItemCommand事件.在那里,您可以通过以下方式获取UserID:

void DetailsView1_ItemCommand(Object sender,DetailsViewCommandEventArgs e){
    if (e.CommandName == "SetToRenter")
    {
        // if UserID is in second row:
        DetailsViewRow row = DetailsView1.Rows[1];

        // Get the Username from the appropriate cell.
        // In this example,the Username is in the second cell  
        String UserID = row.Cells[1].Text;
        MembershipUser memUser = Membership.GetUser(UserId);
        Roles.AddUserToRole(memUser.UserName,"Renter");
    }
}

正如Cem所说,你应该设置DetailsView的DataKey Property.然后你也可以通过以下方式获得当前记录的PK:

// Get the ArrayList objects that represent the key fields
ArrayList keys = (ArrayList)(DetailsView1.DataKey.Values).Keys;
// Get the key field for the current record. 
String UserID = keys[0].ToString();

更简单的是DetailsView的快捷方式SelectedValue:

String UserID= DetailsView1.SelectedValue.ToString();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读