批量插入和删除的WCF DataService或WCF端点

时间:2012-08-29 19:12:25

标签: c# asp.net-mvc wcf wcf-data-services

我们有一个新的客户端应用程序,它将部署在远程服务器上,并且由于各种原因通过某种类型的WCF服务与另一台服务器上的数据库交互。我负责构建DataLayer和Servicelayer。

无论如何,问题是我正在开发MVC客户端应用程序的同志希望进行批量插入和更新。具体来说,从Parent到其所有子节点构建一个完整的对象,然后通过WCF提交,然后点击EntityModel,一切都得到了解决。但是,我在使用DTO创建服务层之后使用普通的WCF端点,尝试他要求的是一个噩梦来处理,因为413错误说大小太大会抛出,无论我将缓冲区大小设置为最大值

然后我尝试了WCF DataServices,我玩的越多,我就喜欢它,但是现在似乎没有必要使用DTO的服务层,我甚至无法弄清楚如何为它设计一个。我不相信它会做他要求的批量交易类型,只有单独的对象,而不是嵌套。此外,没有服务层,由于通过URI与ODATA进行调用的方式,他的存储库模式可能会膨胀。另外,我是不是将Presentation(客户端)与DataLayer紧密耦合在一起?

我应该使用哪种WCF类型,他的请求是否可行?

1 个答案:

答案 0 :(得分:0)

413错误不是来自WCF,而是来自IIS。所以你应该能够按照this post中的建议来处理你的主要问题(除非你的WCF消息大小超过4GB,这完全是另一个问题)。

一旦恢复了理智,您就可以回到WCF数据服务是否适合您的情况的问题。