Web服务数据源的ORM?

时间:2010-09-05 03:55:19

标签: .net web-services orm architecture data-access

似乎有很多很棒的对象关系映射器 - 其中有几个我自己使用过(LLBLGen是我喜欢的一个)。当DataSource不是数据库时,有没有人知道任何.Net工具来帮助构建丰富的数据访问层 - 或者更具体地说,数据源是多个,高度精细的,返回大量域特定对象和DTO的Web服务?

为什么我有web服务时甚至想要一个数据访问层我可以直接从BLL调用你可能会问?好吧,除了记录,缓存和预取机制之外,我希望能够将所有略有不同的Web服务DTO转换为具有微妙不同的命名约定,并将它们映射到我自己的,一致命名和构造的类,具有共同的基础类型。不小的任务,所以我希望有一些工具可以提供帮助!

感谢您的任何建议或指示!

4 个答案:

答案 0 :(得分:1)

从技术上讲,你需要的不是ORM,因为没有“关系”部分。因此,最有可能的是,现有的类似ORM的工具不适合开箱即用。

我建议您查看自定义代码生成工具,例如T4(内置于VS2008 +)或CodeSmith。
SubSonic 3有一些ActiveRecord和存储库类的模板,您可以从这些模板开始,并将它们更改为使用Web服务作为“后端”而不是数据库。

P.S。仅供参考,here是一个讨论ORM和类自动生成的线程(前一段时间由我开始)。

答案 1 :(得分:1)

你所描述的不是ORM,所以你可能找不到那样的东西。

如果主要目标是在服务引用的对象模型和您自己的对象模型之间进行转换,请查看AutoMapper。它旨在完全自动化这类任务。

答案 2 :(得分:0)

根据场景的复杂程度,我会根据您提到的功能(缓存,日志记录等)和AutoMapper使用更具体的框架。

PS。虽然可能有框架可以满足您的需求,但当时我没有想到的任何框架。

答案 3 :(得分:0)

也许我错过了一些东西,但是你不能只使用Web服务的WSDL文件为服务生成客户端代理代码。

相关问题