我已经在我们当前服务层的数据访问层上实现了存储库模式。
我们有一个对象模型,其中同一类“历史记录”映射到多个对象(目前是 6 个,但很快会更多!)
使用 linq to sql 的部分最佳实践不是为 db 中的每个表都有一个 dbml 文件,而是将其分解,这样在创建上下文时不会对性能造成巨大影响。
不幸的是,分隔对象的逻辑位置将历史注释留在了 5 个不同的 DBML 文件中。当 linq 生成器创建类时,它会在不同的命名空间中生成不同的类。
我在域模型中有一个历史笔记对象,但我不想每次使用历史笔记时都将域对象模型重新映射到数据模型中。
我不想做的一件事是将数据的“读取”分解为多个查询。
有没有一种方法可以将历史记录映射到多个数据模型中,但只编写一次映射?
谢谢
皮特
解决方案
感谢您的帮助,我想我将回到所有数据表的一个数据上下文。
设置多个模型所涉及的变通方法不值得代码的额外复杂性和潜在的脆弱性。必须编写相同的左手、右手代码来映射历史笔记是太多的工作和太多的地方来保持代码同步。
谢谢大家的输入