问题标签 [microsoft-odata]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
84 浏览

c# - ODataClient:批量执行 DataServiceActionQueries

我正在从 SimpleOdataClient 迁移到 MS ODataClient,我想知道如何批量执行 DataServiceActionQueries。批量执行DataServiceRequests是没有问题的,但是我还没有找到DataServiceActionQueries的解决方案。可能吗?

0 投票
1 回答
3800 浏览

c# - .NET CORE 5 中的 Microsoft OData - 将 OData 添加到服务会导致缺少 using 指令,但该包仍然存在

我正在.net core 5.0 中开发。(Sam Xu 有一个关于迁移到 dotnet core 5 的教程

我已经用 Visual Studio 中最简单的 API 项目回到了绝对最低限度。

今年早些时候,我在我的项目中进行了这项工作,它在 .net core 5.0 上运行。见上面的教程。

在这个项目中,我创建了一个新项目。然后我去NuGet获取包“Microsoft.AspNet.OData”版本7.4.1

然后我将以下内容添加到启动文件中。

我添加了“services.AddOData”并抛出了错误,

错误 CS1061“IServiceCollection”不包含“AddOData”的定义,并且找不到接受“IServiceCollection”类型的第一个参数的可访问扩展方法“AddOData”(您是否缺少 using 指令或程序集引用?) JobsLedger.API C:\Users/.../JobsLedger.API\Startup.cs 35 活动

我已经添加了这项服务所需的包。现在我几个月前就开始工作了。

是否有需要添加的新包?

我做错了什么,或者这是我不知道的“重大变化”?

0 投票
0 回答
144 浏览

dynamics-crm - Microsoft 的 OData 客户端生成的类无法编译

我们正在尝试使用Microsoft 的 OData 客户端为 Microsoft Dynamics 中的自定义实体生成 C# 类。根据说明,我们将“OData Connected Service”扩展添加到 Visual Studio 并连接到 Dynamics $metadata 端点以生成客户端代码。

我们最终生成了超过 1,100 个源文件和超过一百万行代码。有时代码生成会使 Visual Studio 崩溃。还有一次我们遇到内存不足异常。即使我们将生成的实体限制为我们自己在 Dynamics 中的自定义实体,也会发生这种情况。

最糟糕的部分是生成的代码无法编译。最常见的编译器错误是:

这是导致此错误的示例源代码行:

有谁知道为什么会这样?

0 投票
0 回答
228 浏览

c# - 使用 OData 在 ASP.NET Web API 中转义 JSON 字符串

我在 .NET Core 3.1 上有一个 ASP.NET Web API,使用 Microsoft.AspNetCore.OData 包来实现多个 OData 控制器。其中一个模型有一个用于保存 HTML 的字符串字段,我在请求正文中将模型用于 OData 端点之一。因为字符串内容是 HTML,它必须包含我在 JSON 正文中转义的双引号。但是,当请求正文转换为模型时,它不会识别字符串已经转义,实际上是转义了转义字符。该问题在此处的 GitHub 存储库中重现。

模型:

请求正文:

预期的

实际的

为什么会这样,我该如何解决?

0 投票
1 回答
112 浏览

c# - 如何让 Microsoft.OData.Client 在更新时关联表?

我已经在邮递员中测试了这个请求(对 Microsoft Dynamics 365 CRM)并且它工作正常:

标头包括:

身体

我不知道如何让 Microsoft.OData.Client 生成此请求。更新记录如下所示,这确实有效,因为我可以使用主键

摘要foo_AccountId@odata.bind : "/accounts(b770a30d-55d9-e211-89ad-005056ae0100)"使用Microsoft.OData.Client时 如何获取body中的属性?

0 投票
1 回答
213 浏览

azure-active-directory - MS Graph API:使用 Expand 时 OrderBy 不起作用(组 - 成员)

问题:

我正在使用 Microsoft Graph API检索组成员。我需要根据“ displayName ”对结果进行排序。自己做这个,效果很好。我还需要知道返回的成员是否可能有自己的成员。因此,我将扩展(成员)添加到我的 OData 查询中。展开工作,但原来的 orderBy 然后无法订购。

似乎您可以在“组”调用中使用 Expand 和 Orderby,但不能在“成员”调用中使用。

图资源管理器:

作品:

仅针对组成员的 Orderby :

仅在组上展开和排序:

**带有请求头: ConsistencyLevel:最终

不起作用:

对组成员展开和订购:

文档:

我似乎找不到文档将其标记为问题的任何地方。我能找到的最接近的是“已知问题”页面,指出“$expand:不支持@odata.nextLink。不支持超过 1 级扩展。 不支持额外参数($filter,$select)。

https://docs.microsoft.com/en-us/graph/known-issues?view=graph-rest-1.0#query-parameter-limitations

这些仅标记过滤器和选择...此外,这并不能解释为什么我可以将 Expand、Filter 和 OrderBy 都与Groups调用结合使用,但不能与Members调用结合使用

其他注意事项:

我一直在使用Microsoft Graph Explorer.Net SDK(版本 3.25 和最新的 4.0)进行测试。这两个都给出了同样的问题。

**另外:.NetSDK 存在一个现有的开放错误,在执行成员调用时不允许投射到组。我对此没有问题,目前正在使用一种解决方法:

https://github.com/microsoftgraph/msgraph-sdk-dotnet/issues/836

图片说明:

在此处输入图像描述

0 投票
0 回答
25 浏览

odata - HttpPatch 增量参数始终为 Null

我在 Asp.Net core 5 中编写了一个启用 oData4 的 API。该 API 公开了 HttpGet、HttpPost、HttpPut、HttpPatch 和 HttpDelete。我用邮递员测试了 API,一切正常。包括,HttpPatch,我在尝试使用 Microsoft.oData.Client 时遇到问题。

在客户端,我编写了一个使用 Microsoft.oData.Client 的控制台应用程序。问题出在 API 方面。我在 HttpPatch Action 上设置了一个断点,当通过“Microsoft.oData.Client”访问时,Delta 始终为空。我用“Simple.OData.Client”和邮递员测试了HttpPatch,一切都按预期工作。

客户端代码为:

我一直在尝试解决一个多星期,但没有成功。我放弃了,我正在寻求任何人的帮助。我非常感谢对这个问题的任何贡献