我是 EF Core 和数据库的新手,因为我还是一名学生。我在我正在制作的项目中要求有一个独立于应用程序数据库的身份数据库。
我已经使用 ASP.NET Core Identity 和一些自定义属性设置了身份数据库。我正在整理另一个数据库来存储联系页面的票证,但由于某种原因,我似乎无法使外键正常工作。当我迁移新数据库时,它会在我的应用程序数据库中为我已经在 Identity 数据库中自定义的 Identity 类创建一个重复表。
我想知道如何防止这种情况以及它是否与外键相关,因为我在网上找到的信息似乎表明 EF Core 2.1 不支持
模型中的标识类:
using Microsoft.AspNetCore.Identity;
namespace WebTemplate.Models
{
public class Identity : IdentityUser
{
public string Building { get; set; }
public string Room { get; set; }
public string FullName { get; set; }
}
}
Run Code Online (Sandbox Code Playgroud)
模型中的ContactForm类:
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace WebTemplate.Models
{
public enum StatusCode
{
[Display(Name="Open")]Open,
[Display(Name = "Under Review")] UnderReview,
[Display(Name = "Pending Change")] PendingChange, …Run Code Online (Sandbox Code Playgroud) c# relational-database asp.net-core-mvc asp.net-core-2.0 entity-framework-core-2.1
对于我在实习中所做的项目,我们必须使用存储库模式.由于该项目已经在使用EF Core,我读到底层实现中已经有了存储库和工作单元.我想我会直接使用EF Core方法而不实现存储库类,因为我想防止混乱.
那么现在我有点问题,当我实现这种方式时,我似乎无法找到有关单元测试的有用信息.该要求是一项艰难的要求,由于该公司的标准,我要求在我的控制器内100%覆盖CRUD功能.我发现了一些微软文档的这里,这里和集成测试使用SQLite,但我似乎仍不能找出单元测试.我做了一些谷歌搜索,除了集成测试我找不到资源.
有没有什么方法可以直接使用EF Core进行单元测试,或者我是否需要制作存储库才能正确地对该程序进行单元测试?
c# unit-testing entity-framework-core asp.net-core asp.net-core-mvc-2.0