我应该如何通过Web服务公开数据库类?

时间:2010-09-15 01:04:28

标签: c# .net wcf entity-framework

鉴于直接通过Web服务将linq暴露给sql或实体框架类是一个坏主意,我应该如何通过WCF等Web服务公开数据?

似乎我必须为Web服务创建一组并行类,然后将数据编组到那些看起来不太优雅的数据中。

Web服务将是自定义的,因此像RIA这样的东西在这种情况下不是很有用。

2 个答案:

答案 0 :(得分:1)

您是否看过OData和WCF数据服务?以下是ScottHa的精彩演讲:http://www.hanselman.com/blog/ODataBasicsAtTheAZGroupsDayOfNETWithScottGu.aspx

OData通过WCF数据服务与EF 4无缝协作。

答案 1 :(得分:1)

您可以使用EF 4中对POCO(普通旧CLR对象)的支持将实体模型公开为简单对象。设计人员支持将实体数据模型转换为POCO对象。

特别是对于WCF服务方案,当您尝试向项目中添加新项目时,您还可以使用EF 4中提供的自我跟踪实体T4模板。

我希望以下链接对您有所帮助

http://blogs.msdn.com/b/efdesign/archive/2010/03/10/poco-template-code-generation-options.aspx

http://blogs.msdn.com/b/adonet/archive/2010/01/25/walkthrough-poco-template-for-the-entity-framework.aspx

Generate POCO classes in different project to the project with Entity Framework model