C# 使用ASP.NET实体框架将枚举插入数据库
我有一个名为User的模型,它有用户名、密码、电子邮件地址和SystemRole等属性,这是表“SystemRole”中的外键(有两个属性:Id和SystemRoleType(类型enum))。这是我的系统榜样: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
[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
?!或者您在添加用户
时遇到问题,因为没有系统角色
???你的问题不清楚!!