2014-09-21 79 views
1

尝试访问微风中的OData元数据信息时未找到404页面错误,但如果我将url直接放在浏览器上(没有微风)。BreezeJs With Web API OData尝试读取元数据信息时返回“404”错误

我的服务器端OData实体配置如下所示。

var odataBuilder = new ODataConventionModelBuilder(); 
odataBuilder.Namespace = "BisService.Entities"; 
odataBuilder.EntitySet<CompanyDto>("Company").EntityType.HasKey(x => x.Id); 
config.MapODataServiceRoute("BisService", "BizService", odataBuilder.GetEdmModel()); 

我在Breeze上使用以下配置。

var serverAddress = "/BisService/"; 
breeze.config.initializeAdapterInstance('dataService', 'webApiOData', true); 
var manager = new breeze.EntityManager(serverAddress); 
var query = breeze.EntityQuery.from("Company"); 
manager.executeQuery(query, function(data) { 
     console.log(data) 
}); 
+0

向我们展示breeze客户端发送的URL(从浏览器开发工具获取它)... 404上的那个...然后向我们显示您所说的URL。 – Ward 2014-09-21 19:47:21

回答

0

我试图用odata实现breezejs时遇到类似问题。

在阅读breezejs.com上的OData on the Server文章后,我们决定Web Api适合我们就好了。

如果您需要继续沿着odata路径,请参阅Open Data文章。

0

我遇到了今天可能一直存在的问题。就我而言,我跟踪它归结为在请求中添加以下的头信息:

MaxDataServiceVersion: 3.0 

这是由datajs和我的工作增加周围是注释掉datajs-1.1.2.js下面一行:

if (!assigned(request.headers.MaxDataServiceVersion)) { 
    //request.headers.MaxDataServiceVersion = handler.maxDataServiceVersion || "1.0"; 
} 

这是行在我有版本。