首页 > 解决方案 > 使用 InMemory 数据库进行单元测试给出“无法跟踪 'VwCustomerUser' 类型的实例,因为它没有主键”

问题描述

我正在尝试根据https://www.thecodebuzz.com/dbcontext-mock-and-unit-test-entity-framework-net-core/comment-page使用内存数据库单元测试来测试我的实体框架 DbContext 类-1/?unapproved=3553&moderation-hash=befd47d3c1cab4bc7716b080618b2a0b#comment-3553

我能够在内存中为我的实体生成一个 DbContext 并测试我的代码。但是,我的一个实体来自一个视图,并且没有主键。当我填充我的 DbContext 时,例如,

    context.MyView.Add(new MyView { 
        Country = “USA”, 
        State = “NY”, 
        Address = “Test1”, 
        ZipCode = “121312” 
     }); 

我收到错误消息:“无法跟踪 'MyView' 类型的实例,因为它没有主键。只能跟踪具有主键的实体类型。”。

有人可以建议吗?太感谢了。

射线

标签: c#entity-frameworkunit-testingentity-framework-corein-memory-database

解决方案


推荐阅读