Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用ASP.NET实体框架将枚举插入数据库_C#_Asp.net_.net_Model View Controller - Fatal编程技术网

C# 使用ASP.NET实体框架将枚举插入数据库

C# 使用ASP.NET实体框架将枚举插入数据库,c#,asp.net,.net,model-view-controller,C#,Asp.net,.net,Model View Controller,我有一个名为User的模型,它有用户名、密码、电子邮件地址和SystemRole等属性,这是表“SystemRole”中的外键(有两个属性:Id和SystemRoleType(类型enum))。这是我的系统榜样: [Table("SystemRole")] public class SystemRole { public int Id { get; set; } public SystemRoleTypes SystemRoleType { get

我有一个名为User的模型,它有用户名、密码、电子邮件地址和SystemRole等属性,这是表“SystemRole”中的外键(有两个属性:Id和SystemRoleType(类型enum))。这是我的系统榜样:

[Table("SystemRole")]
    public class SystemRole
    {
        public int Id { get; set; }
        public SystemRoleTypes SystemRoleType { get; set; }
    }
    public enum SystemRoleTypes
    {
        User = 3,
        Manager = 2,
        Admin = 1
    }
我想从数据库中填充User表,以便在列表中显示一个示例用户,但首先应该通过EF填充SystemRole表。如何让EF使用枚举填充表

这是我的用户模型:

public class User
    {
        public int Id { get; set; }
        public string UserName { get; set; }
        public string PassWord { get; set; }
        public string EmailAddress { get; set; }
        public SystemRole SystemRole { get; set; }
    }

你现在得到了什么结果?我认为这应该像您描述的那样工作。默认情况下,它将写入枚举值(int);是否要存储名称?问题是,当我要填充用户表时,无法向SystemRole列添加值,因为SystemRole表未填充,因此,我无法确定此用户将扮演哪个角色。您是否已完成
添加迁移
更新数据库
?如果您转到
系统角色
SQL表并查看
设计器
,您将发现
枚举
的数据类型映射到数据库中的
int
。你想在数据库中插入一些
SystemRole
?!或者您在添加
用户
时遇到问题,因为没有
系统角色
???你的问题不清楚!!