Hidistro.SqlDal/Store/RolePermissionDao.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

namespace Hidistro.SqlDal.Store
{
    using Hidistro.Entities.Store;
    using Microsoft.Practices.EnterpriseLibrary.Data;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Common;
    using System.Linq;
    using System.Text;

    public class RolePermissionDao
    {
        private Database db = DatabaseFactory.CreateDatabase();

        public bool AddRolePermission(IList<RolePermissionInfo> models, int roleId)
        {
            StringBuilder builder = new StringBuilder();
            builder.AppendFormat("Delete From aspnet_RolePermissions where RoleId={0};", roleId);
            if (models.Count > 0)
            {
                builder.Append("Insert into aspnet_RolePermissions([PermissionId],[RoleId]) values ");
                int num = models.Count<RolePermissionInfo>();
                for (int i = 0; i < num; i++)
                {
                    builder.AppendFormat("('{0}',{1})", models[i].PermissionId, models[i].RoleId);
                    if (i != (num - 1))
                    {
                        builder.Append(",");
                    }
                    else
                    {
                        builder.Append(";");
                    }
                }
            }
            DbCommand sqlStringCommand = this.db.GetSqlStringCommand(builder.ToString());
            return (this.db.ExecuteNonQuery(sqlStringCommand) > 0);
        }

        public List<RolePermissionInfo> GetPermissionsByRoleId(int roleId)
        {
            List<RolePermissionInfo> list = new List<RolePermissionInfo>();
            string query = "SELECT [PermissionId],[RoleId] FROM [aspnet_RolePermissions] where RoleId=@RoleId";
            DbCommand sqlStringCommand = this.db.GetSqlStringCommand(query);
            this.db.AddInParameter(sqlStringCommand, "@RoleId", DbType.Int32, roleId);
            using (IDataReader reader = this.db.ExecuteReader(sqlStringCommand))
            {
                while (reader.Read())
                {
                    RolePermissionInfo item = new RolePermissionInfo {
                        PermissionId = reader["PermissionId"].ToString(),
                        RoleId = roleId
                    };
                    list.Add(item);
                }
            }
            return list;
        }

后面还有 53 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。