⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 roles.ascx.cs

📁 如果不使用IIS,请先运行 XSP.exe,待提示已侦听 8080端口后
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
using System.Data;

public partial class admin_Portal_MemberManage_Roles : DNNLite.Entites.Modules.PortalModuleBase 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindRole();
        }
    }

    private void BindRole()
    {
        DataTable tb = new DataTable("roles");
        tb.Columns.Add("Name", typeof(string));

        string[] roles = Roles.GetAllRoles();
        for (int i = 0; i < roles.Length ; i++)
        {
            tb.Rows.Add(new object[] { roles[i] });
        }

        grdRoles.DataSource = tb;
        grdRoles.DataBind();
    }

    protected void btnAddRole_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(txtRole.Text.Trim()))
        {
            lblerr.Text = "请输入角色名";
            return;
        }

        try
        {
            Roles.CreateRole(txtRole.Text);
            BindRole();
        }
        catch (Exception ex)
        {

            lblerr.Text = ex.Message;
        }
        
    }
    protected void grdRoles_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        switch (e.CommandName)
        { 
            case "D":
                if(e.CommandArgument.ToString()=="Administrators")
                {
                    return;
                }

                Roles.DeleteRole(e.CommandArgument.ToString());
                BindRole();
                break;
            case "M":
                txtFindKey.Text = "";
                txtAddUser.Text = "";
                lblCurrentRole.Text = e.CommandArgument.ToString();
                BindUsers(e.CommandArgument.ToString());
                MultiView1.ActiveViewIndex = 1;
                break;

        
        }
    }


    private void BindUsers(string role)
    {
        
        string[] u = Roles.FindUsersInRole(role, txtFindKey.Text+"%"  );

        DataTable tb = new DataTable("users");
        tb.Columns.Add("Name", typeof(string));
        for (int i = 0; i < u.Length ; i++)
        {
            tb.Rows.Add(new object[] { u[i] });
        }

        grdUsers.DataSource = tb;
        grdUsers.DataBind();

        
    }

    protected void btnFind_Click(object sender, EventArgs e)
    {
        BindUsers(lblCurrentRole.Text);
    }
    protected void btnBack_Click(object sender, EventArgs e)
    {
        Response.Redirect(EditUrl());
    }

    protected void grdUsers_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        switch (e.CommandName)
        { 
            case "D":
                if (e.CommandArgument.ToString() == "Admin")
                    return;
                Roles.RemoveUserFromRole(e.CommandArgument.ToString(), lblCurrentRole.Text);
                BindUsers( lblCurrentRole.Text  );

                break;
        }
    }

    protected void btnAddUser_Click(object sender, EventArgs e)
    {
        try
        {
            Roles.AddUserToRole(txtAddUser.Text, lblCurrentRole.Text);
            BindUsers(lblCurrentRole.Text);
        }
        catch (Exception ex)
        {

            lblerr2.Text = ex.Message;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -