gpt4 book ai didi

unit-testing - EntityTypeConfiguration - 测试数据库映射的干净方法是什么?

转载 作者:行者123 更新时间:2023-12-02 04:08:21 26 4
gpt4 key购买 nike

背景:

我公司目前的结构是使用 Plinqo/Linq to Sql 创建“数据访问对象”,然后使用一组自定义的 CodeSmith 模板来构建“业务对象”。长话短说,这两组对象非常紧密耦合,并且使用 Linq to SQL 会导致非常丑陋的解决方法。

Plinqo 模板在生成 dbml 后直接 1:1 映射表到类。这会带来一些安慰,因为如果数据库发生更改,业务对象端(或应用程序端)会出现编译时错误。

我正在慢慢尝试证明 EF 4.1(代码优先)映射到现有模式的好处,但是代码生成的这种“类型安全”已经成为关键利益相关者心中的一个大问题。

问题:

所以在 Entity Framework 4.1 中,我首先使用代码映射到现有数据库。

  • Poco 域对象
  • 每个映射的 EntityTypeConfiguration

  • 作为一个测试项目,你会建议什么来确保到模式的映射是正确的?我应该只创建一个单元测试项目并检索每个对象还是有更好的方法?

    谢谢!

    最佳答案

    我使用了一个基本的通用集成测试来执行 CRUD 操作,而派生的测试只包含用于创建实体和验证每个操作结果的方法。每个测试方法都在未提交的事务范围内运行,因此测试数据库仍处于初始状态。

    在您开始使用存储库而不是使用单个实体类型而开始使用聚合根的情况下,这可以进一步改进。在这种情况下,创建正确的集成测试来操作聚合根非常方便。

    关于unit-testing - EntityTypeConfiguration - 测试数据库映射的干净方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6457274/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com