DAL/AchieveDAL/UserRoleDAL.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using AchieveCommon;
using AchieveEntity;
using AchieveInterfaceDAL;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Text;
namespace AchieveDAL
{
/// <summary>
/// 用户角色(SQL Server数据库实现)
/// </summary>
public class UserRoleDAL : IUserRoleDAL
{
/// <summary>
/// 设置用户角色(单个用户)
/// </summary>
/// <param name="role_addList">要增加的</param>
/// <param name="role_deleteList">要删除的</param>
public bool SetRoleSingle(List<UserRoleEntity> role_addList, List<UserRoleEntity> role_deleteList)
{
Hashtable sqlStringList = new Hashtable();
for (int i = 0; i < role_deleteList.Count; i++) //删除的用户角色
{
StringBuilder sb = new StringBuilder();
sb.Append("delete from tbUserRole ");
sb.Append("where UserId=@UserId and RoleId=@RoleId");
SqlParameter[] para1 = {
new SqlParameter("@UserId", SqlDbType.Int,10),
new SqlParameter("@RoleId", SqlDbType.Int,10)
};
para1[0].Value = role_deleteList[i].UserId;
para1[1].Value = role_deleteList[i].RoleId;
sqlStringList.Add(sb, para1);
}
for (int i = 0; i < role_addList.Count; i++) //新增的用户角色
{
StringBuilder sb = new StringBuilder();
sb.Append("insert into tbUserRole(");
sb.Append("UserId,RoleId)");
sb.Append(" values (");
sb.Append("@UserId,@RoleId)");
sb.Append(";select @@IDENTITY");
SqlParameter[] para2 = {
new SqlParameter("@UserId", SqlDbType.Int,10),
new SqlParameter("@RoleId", SqlDbType.Int,10)
};
para2[0].Value = role_addList[i].UserId;
para2[1].Value = role_addList[i].RoleId;
sqlStringList.Add(sb, para2); //【【sb不能ToString() 否则报hashtable不能有相同键的错误】】
}
try
{
SqlHelper.ExecuteNonQuery(SqlHelper.connStr, sqlStringList); //批量插入(事务)
return true;
}
catch
{
后面还有 53 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。