在哪里可以找到有关创建WCF数据服务自定义数据服务提供商的信息?

时间:2009-11-09 18:00:08

标签: wcf-data-services

我们的团队正在使用WCF数据服务(以前称为ADO.NET数据服务)进行评估,并确定我们必须创建Custom Data Service Provider。我们在哪里可以找到两个必需接口的示例实现:IDataServiceMetadataProviderIDataServiceQueryProvider

编辑:请注意,“WCF自定义数据服务提供商”与“ADO.NET自定义数据提供商”相同。

编辑:我们已经开始使用Reflector进行逆向工程,但如果有人有他们愿意发布的样本,我仍然会很感激!

6 个答案:

答案 0 :(得分:3)

我刚刚在两周前使用自定义提供程序实现了我的第一个DataService,并且即将放弃(即使在阅读了AlexJ的blog post on custom providers.之后)。

然后我发现custom provider toolkit使这项任务变得非常简单。查看解决方案以及实现其中的演示Web服务的方式。然后改变该演示项目以满足您的需求。从头开始对所有这些进行编码要容易得多,而且工具包无论如何都是以可重用性构建的。

答案 1 :(得分:1)

最后!来自微软的亚历克斯詹姆斯正在写博客:

http://blogs.msdn.com/alexj/archive/2010/01/04/creating-a-data-service-provider-part-1-intro.aspx

答案 2 :(得分:0)

我不知道任何开源/公开实现;您最好的选择可能是针对现有实现使用.NET Reflector。

答案 3 :(得分:0)

您需要编写的代码取决于您的数据源。

您可以使用标准ADO.Net数据服务来节省开发工作,并在必要时进行扩展。

查看有关将自定义代码注入ADO.Net数据服务的此链接:http://weblogs.asp.net/cibrax/archive/2009/06/08/injecting-custom-logic-in-ado-net-data-services.aspx

该页面还有一个链接,显示了一些实施细节。

答案 4 :(得分:0)

我假设MS在创建 SharePoint提供程序时使用了WCF数据服务自定义提供程序接口,也许我们可以通过反映某些SharePoint DLL来查找使用情况信息。

答案 5 :(得分:0)

实现此目标的最佳方法是使用WCF Data Services Toolkit

该项目的作者/维护者也有一些关于其用法的博客文章。他没有详细介绍如何使用它的所有功能 - 但它确实为您提供了很好的介绍和如何使用它的示例。

它实质上允许您通过实现“存储库”类将任何对象公开为OData源。它处理向数据服务框架报告数据形状所需的所有反射。