Breeze和EdmBuilder for OData v4

 刘哥2502908157 发布于 2022-12-31 20:38

由于本文档,我能够在服务器端使用WebApiOdata和EntityFramework以及客户端的Breeze创建OData(v3)服务.

现在我想对OData规范的第4版做同样的事情.但有一个问题.EdmBuilderBreeze提供的类依赖于与版本3相关的'Microsoft.Data.Edm'.

EdmBuilder这两行中阻止了项目的建立:

using Microsoft.Data.Edm.Csdl;
using Microsoft.Data.Edm.Validation;

这是正常的,因为我的项目引用了'Microsoft.OData.Edm'(对于v4)而不是'Microsoft.Data.Edm'(对于v3).

所以我用这个替换了2个using语句:

using Microsoft.OData.Edm;
using Microsoft.OData.Edm.Csdl;
using Microsoft.OData.Edm.Validation;

现在项目可以构建,但在运行时它会抛出此异常

"解析EDMX文档时遇到以下错误:UnexpectedXmlElement:根元素的元素'Edmx'是意外的.根元素应该是Edmx.:( 1,40)"

EdmBuilder此时类:

using (var reader = XmlReader.Create(stream))
            {
                return EdmxReader.Parse(reader);
            }

有什么方法可以解决这个问题吗?就像EdmBuilder我可以在某处下载的新课程一样?:)

谢谢.

PS:我使用代码首次迁移和此代码在'WebApiConfig'中配置OData路由:

config.MapODataServiceRoute(
            routeName: "ODataRoute",
            routePrefix: "OData",
            model: EdmBuilder.GetEdm(),
            batchHandler: new DefaultODataBatchHandler(GlobalConfiguration.DefaultServer));

Jay Traband.. 7

我们目前正在开发一个适用于OData v 4.0的微风版本.我将在发布时发布回来,这应该是在不久的将来.

1 个回答
  • 我们目前正在开发一个适用于OData v 4.0的微风版本.我将在发布时发布回来,这应该是在不久的将来.

    2022-12-31 20:40 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有