sqlserver 中怎么管理用户权限

53次阅读
没有评论

共计 1753 个字符,预计需要花费 5 分钟才能阅读完成。

本篇文章为大家展示了 sqlserver 中怎么管理用户权限,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

Menu, 这三个表之间有如下关系:User_Role= RoleId= RoleMenu RoleMenu= MenuId= Menu 它们之间的业务关系是:当用户登陆后,通过 UserId 得到 User_Role 列表,将用户所包括的角色得出 通过 User_Role 找到所有对应 Menu 现在有个问题,就是一个用户可以有多少角色,一个角色有多个菜单,当然,两个不同的角色可以有相当的菜单项,这时,就出现一个问题,用户在“管理员”这个角色里有“文件”这个菜单,同时它在“新闻管理员”这个角色里也有“文件”这个菜单,这样返回就会出现两个完成相同的”文件“菜单,下面,我使用匿名类和 distinct 方法来解决这个问题,代码如下:复制代码 代码如下:
class Program {static void Main(string[] args) {#region 实体列表初始化 List User_Role userRole = new List User_Role { new User_Role( 01 ,1), new User_Role(01 ,2), new User_Role(02 ,1), }; List Role_Menu roleMenu = new List Role_Menu {new Role_Menu(2,3), new Role_Menu(1,1), new Role_Menu(1,2), new Role_Menu(2,1), new Role_Menu(2,2), }; List Menu menu = new List Menu {new Menu(1, 编辑 ,2), new Menu(2, 文件 ,1), new Menu(3, 视图 ,3), new Menu(4, 系统 ,4), }; #endregion var linq = from data1 in userRole join data2 in roleMenu on data1.RoleId equals data2.RoleId join data3 in menu on data2.MenuId equals data3.MenuId where data1.UserId.Equals(01) select new {UserId = data1.UserId, MenuId = data2.MenuId, Menu = data3,}; linq.Distinct().OrderBy(i = i.Menu.OrderNumber).ToList() .ForEach(i = Console.WriteLine( 用户 ID:{0}, 菜单 ID{1}, 菜单名:{2} , i.UserId, i.MenuId, i.Menu.MenuName)); Console.ReadKey();} } #region 实体对象 class User_Role {public string UserId { get; set;} public int RoleId {get; set;} public User_Role(string userId, int roleId) {this.RoleId = roleId; this.UserId = userId;} } class Menu {public int MenuId { get; set;} public string MenuName {get; set;} public int OrderNumber {get; set;} public Menu(int menuId, string menuName, int orderNumber) {this.MenuId = menuId; this.MenuName = menuName; this.OrderNumber = orderNumber;} } class Role_Menu {public int RoleId { get; set;} public int MenuId {get; set;} public Role_Menu(int roleId, int menuId) {this.RoleId = roleId; this.MenuId = menuId;} } #endregion

上述内容就是 sqlserver 中怎么管理用户权限,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计1753字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)