The Breeze documentation says:
This [MetadataStore.FetchMetadata] call is made automatically by Breeze just before it attempts to perform
I found the fix for this issue. Breeze is getting the metadata.
But Breeze has one mostly undocumented OData Requirement that is not part of the OData spec:
In the metadata the Schema Namespace
(found toward the top of the metadata) and the EntitySet
EntityType namespace (found under EntityContainer
) must be the same.
Thanks to the Pluralsight course by Brian Noyes for letting me know this.
NOTE: This is for WCF Data Services version of OData. Your mileage may vary for Web API OData.
I was able to get this working by making the project that held my Entity Framework model have the same name and namespace as the model's (edmx) namespace.
You can set the namespace of the edmx via right clicking in the designer and selecting properties (namespace is one of the properties).
Once I changed my project (and all the files in it) from the name "DataAccess" to the name of my edmx namespace Breeze started working just fine.