代码之家  ›  专栏  ›  技术社区  ›  Abhijeet

TDD:ef core-in-memory提供程序是否验证引用约束?

  •  4
  • Abhijeet  · 技术社区  · 6 年前

    我对单元测试的ef核心的内存特性感到非常兴奋。它减轻了我编写专用存储库的负担,只是为了使代码单元可测试。但是仅仅在一个集合中进行内存测试是不够的。

    ef core in memory提供程序是否验证引用约束?

    1 回复  |  直到 6 年前
        1
  •  4
  •   CodeNotFound dotnetstep    6 年前

    ef core in memory提供程序是否验证引用约束?

    答案是:不。

    内存 提供程序不是关系数据库的替换。它是为测试而创建的。

    摘自 documenation 以下内容:

    内存 被设计成一个用于测试的通用数据库,以及 不是为模仿关系数据库而设计的。 这方面的一些例子包括:

    • 内存 将允许您保存违反引用的数据 关系数据库中的完整性约束。

    • 如果你使用 DefaultValueSql(string) 对于模型中的属性,此 是关系数据库API,运行时将不起作用 反对 内存 .

    提供程序未验证任何约束的第一个点。