【发布时间】:2019-12-25 15:44:26
【问题描述】:
我创建了一个测试项目,我在其中使用 .NET Core 2.2 和 Identity Framework 2.0。
我已经成功创建了一个项目并调整了一些字段,以便我了解数据是如何从View解析到Controller再到Stores。
我一直在考虑自定义数据库,以便用户还包含一个ReferralID 来测试一些东西,这个ReferralID 是一个整数。
我所做的是用这个自定义属性扩展了IdentityUser,并为每个身份选项制作了一个自定义版本。
public class ApplicationUsers : IdentityUser
{
public int? ReferralID { get; set; } = null;
}
我还在生成的表中将其添加到数据库中,但现在应用程序抛出错误:
CLR 属性“ReferralID”不能添加到实体类型“IdentityUser”,因为它是在 CLR 类型“ApplicationUsers”上声明的
很遗憾,我无法找到/理解问题所在,模型构建器似乎有问题,我没有接触模型构建器,它是使用脚手架自动生成的 Scaffold-DbContext "Data Source=(localdb)\mssqllocaldb;Initial Catalog=CoreTest;Integrated Security=True" Microsoft.EntityFrameworkCore.SqlServer -Context GolfScoresContext -OutputDir Models -DataAnnotations -Project WebApi -Force
我错过了哪一步?或者我不能向 IdentityUser 添加自定义属性吗?我看到有人为此苦苦挣扎并将[NotMapped] 添加到ApplicationUsers,但我认为我的财产不会得到保存。
【问题讨论】:
标签: c# sql-server entity-framework-core