我第一次使用asp.net core来使用EF Core,我必须承认我没有找到好的体验(特别是如果您来自NH)。现在,我有以下情形:
我想测试这些方法,但是我不确定采用哪种最佳方法……阅读文档后,看来最好的选择是使用SQLite,但是有一个小难题:设置数据库。
文档说我可以使用context.Database.EnsureCreated
方法。不幸的是,这仅在尚未创建内存数据库的情况下才有效。换句话说,在从第一个上下文实例中调用if之后,在第二个上下文实例上调用时它不会执行任何操作(因为两个上下文共享同一个db,并且它已经在第一个调用之后创建)。实际上,这意味着我将得到一个部分db,该部分db的表映射到第一个上下文的实体。
是否有一种方法可以强制创建第二个上下文表?即,我可以使用EF Core编写类似的内容吗?
contextA.Database.EnsureCreated();
contextB.Database.JustCreateTheTablesPlease();
还是在运行测试之前是否需要通过SQL脚本重新创建数据库?
谢谢。