I would like to add a custom OData endpoint to SharePoint 2010.

Because of its dependency on .NET 4.0, the Web API OData provider is currently not an option for SharePoint 2010 (based on .NET 3.5). Therefore I am attempting to use the WCF Data Services Toolkit even though it is a 'dead' project (last update was May 2011).

I followed these instructions which rely on the Microsoft.SharePoint.Client.ServerRuntime to provide the hosting support alleviating the need to modify web.config. However, after deploying my SharePoint WSP to my server, and trying to access the new WCF service, I get the following error:

The type 'Company.Services.CapturxData, CapturxOData, Version=, Culture=neutral, PublicKeyToken=590c8a9e4250b98a', provided as the Service attribute value in the ServiceHost directive could not be found.

even though the CapturxOData assembly is loaded into the W3WP.exe process and the type is correctly referenced in my CapturxData.svc file:

<%@ ServiceHost 
    Factory="Microsoft.SharePoint.Client.Services.MultipleBaseAddressDataServiceHostFactory, Microsoft.SharePoint.Client.ServerRuntime, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
    Service="Company.Services.CapturxData, $SharePoint.Project.AssemblyFullName$"

Are there additional configuration steps or configuration options to be set for this scenario to work? Or is there another way to add a custom OData provider to SharePoint 2010?


1 Answer 1


I have a code sample that exposes the Web Property Bag as a custom ODATA web service in SharePoint 2010 using the Data Service Host Factory. I didn't need to use any toolkits. I believe the purpose of the toolkit was to provide support for dynamic entities. Deploy the .svc file under the ISAPI folder - I didn't have to modify any web.config settings.

Here are the code snippets. Let me know if this helps. The service is part of a project with a bunch of other stuff. If you have trouble getting it running, let me know and I can try to package it up as a Visual Studio project.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.