zoukankan      html  css  js  c++  java
  • 我和杨兄的不同的Code First简单权限设计

    1、我的
        [Table("UserInfo")]
        public class UserInfo
        {
            [Key]
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int UserId { get; set; }
            public string Name { get; set; }
            public string Password { get; set; }
            
            public virtual List<PermissionGroup> UserPGroup { get; set; }
    
        }
    
        [Table("Permission")]
        public class Permission
        {
          
            public Permission()
            {
    
            }
            public Permission(string module, string pCode, string pdesc)
            {
                this.Module = new Module(module, pCode);
                this.Name = pdesc;
            } 
            [Key]
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int Pid { get; set; }
    
            public string Name { get; set; }
            public  Module Module { get; set; }
            public virtual List<PermissionGroup> groups { get; set; }
        }
    
        [Table("PermissionGroup")]
        public class PermissionGroup
        {
            [Key]
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int GroupId { get; set; }
            public string GroupName { get; set; } 
    
            public virtual List<Permission> ListPermission { get; set; }
             
            public virtual List<UserInfo> Users { get; set; }
    
        }
    
    
        [ComplexType]
        public class Module
        {
            public Module()
            {
    
            }
            public Module(string moduleName,string pCode)
            {
                this.ModuleName = moduleName;
                this.PermissionCode = pCode; 
            }
            public string ModuleName { get; set; }
            public string PermissionCode { get; set; }
        }

    2、 下载demo

  • 相关阅读:
    将node.js代码放到阿里云上,并启动提供外部接口供其访问
    Linux内核深度解析之内核互斥技术——读写信号量
    man 1 2 3 4...
    Android Sepolicy 相关工具
    selinux misc
    ext4 mount options
    tune2fs cmd(ext fs)
    /dev/tty node
    kernel misc
    fork & vfork
  • 原文地址:https://www.cnblogs.com/zjflove/p/3111748.html
Copyright © 2011-2022 走看看