问题标签 [microsoft.odata.core]

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 回答
157 浏览

c# - 使用 Microsoft.OData.Client 为导航属性和子类创建 OData 查询 URL

我正在使用 Microsoft OData 客户端(不生成代码)来访问 Dynamics CRM API,并且我试图弄清楚如何让它生成像这样的简单 URL...

https://<base URL>/EntityDefinitions(<ObjId>)/Attributes/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?$expand=GlobalOptionSet

这是一个简单的查询,用于从单个实体获取导航属性,向下转换AttributeMetadatafromAttributesPicklistAttributeMetadata,然后在其中展开属性。

使用Simple.OData.Client,我可以使用以下代码执行此操作:

Microsoft.OData.Client,我有一点战斗。到目前为止,我能想到的最好的是:

但是,上面的代码给了我这个 URL: https://<base URL>/EntityDefinitions(<ObjId>)/Attributes?$expand=OptionSet

也就是说,我已经设法让导航工作(尽管通过讨厌的、非类型安全的代码),但向下转换根本没有任何效果。我也试过IQueryable.OfType<>,但没有任何区别。

与 Microsoft OData 库中的 Simple.OData.Client 库.As<>等效的正确方法是什么?.Navigate()我现在真的更喜欢 Simple.OData.Client,但我想给 MS OData 一个公平的机会,因为它有更多的下载量,而且它是一个 MS 包,所以可能有更长的使用寿命。

谢谢!

0 投票
0 回答
9 浏览

c# - ODataParameterReader 在读取批处理请求的请求正文部分时引发异常

使用相同的请求正文直接调用 API 有效,

但发送批处理的相同正文部分会引发无效的 json 异常:

--batch_myBatchId 内容类型:应用程序/http 内容传输编码:二进制

0 投票
0 回答
8 浏览

c# - 如何使用 ODataMessageReader 从 Odata 请求正文中读取大型二进制流

我需要从 POST 请求中读取大字符串。有没有办法将字符串读取为 Action 并将其延迟加载到内存中,直到实际处理开始。