VS2010 WCF Data Service metadata namespace not supported

Feb 22, 2010 at 11:08 PM
Edited Feb 22, 2010 at 11:08 PM

Hi team,

We are working on some HOL samples using the PHP ADO.NET Data services toolkit with the latest VS2010 RC bits and we found a problem related to the EDM namespace used in the generated WCF (formerly ADO.NET) Data Service $metadata response.

Below you can find a sample $metadata response. Notice the bolded edm namespace:

 

<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 
- <edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx"> - <edmx:DataServices xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" m:DataServiceVersion="1.0"> + <Schema Namespace="AdventureWorksShoppingModel" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"
xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"
xmlns="http://schemas.microsoft.com/ado/2008/09/edm">

This namespace is not supported in the ADODotNETDataServices2PHPProxy.xsl file. We've workaround the issue by hacking the file to support this new version of the namepspace:

 

 

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx"
    xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"
    xmlns:schema_1_0="http://schemas.microsoft.com/ado/2006/04/edm"
    xmlns:schema_1_1="http://schemas.microsoft.com/ado/2008/09/edm"
xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
  <!--Removed Entity Data Model schema-->
  <!--xmlns:schema_1_1="http://schemas.microsoft.com/ado/2007/05/edm"-->

 

The approach above worked for us in this specific scenario, but we are pretty sure hacking the xsl file is not the best approach. You might have another solution in mind.

We hope you can find this info useful for your next release.

Thanks in advance,

Juan Arguello

http://blogs.southworks.net/jarguello

Coordinator
Mar 17, 2010 at 4:46 AM
Edited Mar 17, 2010 at 4:49 AM

 

Thanks Juan.

Yesterday we have released a new version of SDK, please visit the site http://odataphp.codeplex.com.

This release has the following features

  • Support for all new OData protocol features (Projections, Server-Side paging, Blobs, RowCount and Customizable Feeds)
  • Support for Azure authentication (Azure Table and ACS)
  • Better programming model with APIs for all Query Options
  • Support for .NET 4.0 based WCF Services.
  • Support for OnBeforeRequest and OnAfterResponse call-backs
  • Support for SetLink
  • More command line options
  • Additional samples

Thank you once again.

Regards,

Anu