問題タブ [simple.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 投票する
1 に答える
828 参照

dynamics-crm - Ms Dynamic 2016 Web API挿入を使用した単純なOdataはnullを返します

シンプルな Simple.Odata API を使用して新しいエンティティ データを Ms Dynamic CRM Web API に挿入し、次のコード スニップを使用しています。

このコード スニップは新しいエンティティ データを作成しましたが、問題は newcontactData が常に null であることです。ドキュメントによると、newcontactData オブジェクトには新しく作成されたオブジェクト データが必要です。ドキュメントのリンクを参照して ください https://github.com/object/Simple.OData.Client/wiki/Adding-entries

0 投票する
2 に答える
11050 参照

dynamics-crm - CRM はエンティティ参照プロパティの直接更新をサポートしていません。代わりにナビゲーション プロパティを使用してください

シンプルな OData で Ms Dynamic Web Api を使用しています。リンク エンティティの新しいレコードを追加する必要があります。

以下のコード スニップを使用して、 https://github.com/object/Simple.OData.Client/wiki/Adding-entries-with-linksのドキュメントを参照しています。

私は例外を取得しています

CRM はエンティティ参照プロパティの直接更新をサポートしていません。代わりにナビゲーション プロパティを使用してくださいS

0 投票する
2 に答える
1003 参照

c# - Simple.OData.Client で証明書認証を使用するには?

Simple.OData.Client で証明書認証を行う方法は? APIの呼び出し中に使用したいX509Certificate2があります。.net フレームワーク 4.6 を使用しています。

いくつか検索したところ、HttpClientHandler を介して追加できることがわかりました。しかし、私はそれを行う方法を理解することができません。以下は私が持っているコードです。

0 投票する
0 に答える
240 参照

c# - Xamarin Cross-Platform プロジェクトを OData サービスに接続する

Visual Studio 2017 Xamarin Cross-Platform テンプレートを使用しています。これは OData に接続する必要があります。そこで、これらの NuGet パッケージを追加しました。

まだエラーはありません。しかし:

xamarin のドキュメントによると、追加する必要がありSimple.OData.Clientます。追加した直後に、共有プロジェクトのほぼすべてのタイプのコードをSimple.OData.Client (v 4.26.0)取得しています。Reference to type 'Object' claims it is defined in 'System.Runtime', but it could not be foundCS7069

私はいくつかのグーグルをして、これを見つけまし。それをどこに追加すればよいかわかりません。

追加しましSystem.Runtimeたが、何もしませんでした。

このソリューションは、3 つのプロジェクトを使用した変更されていない xamarin クロスプラットフォーム ソリューションと考えてください。SharedProjectAndroidおよびiOS

バージョンの不一致はありますか? もしそうなら、これらの参照のどのバージョンが相互に互換性がありますか?

前もって感謝します :)

0 投票する
3 に答える
1639 参照

c# - Simple.OData.Client で特定のプロパティのみを更新する

Simple.OData.Client を使用しており、エンティティの特定のプロパティを更新したいと考えています。

C# で次のクラスがあるとします。

次のように propertyA を更新しようとしています。

これを例に取りました: https://github.com/object/Simple.OData.Client/wiki/Updating-entries

私の問題は、propertyA=test だけでなく propertyB=null の PUT リクエストも送信することです。変更したくないプロパティに null 値を設定しようとします。

特定のプロパティのみを更新し、OData 要求で HTTP PATCH を送信することは可能ですか?

0 投票する
0 に答える
1237 参照

asp.net-core - OData Simple.Odata.V4.Client を使用して関連データを含む新しいレコードを挿入する方法

Microsoft.AspNetCore.Odata v7.4.0 NuGet を使用している ASP.NET Core 3.1x API を使用しており、Simple.OData.V4.Client v5 を使用している ASP.NET Core 3.1v Web クライアントを使用しています。 .12.0

Simple.Odata クライアントから、関連する LineItem オブジェクト (マスター/詳細) を含む Order オブジェクトを投稿しようとしています。Order オブジェクトは API に正しく渡されていますが、関連する LineItem コレクションは渡されていません。

これが私の Order クラスです。

これが私の OrderLineItem クラスです。

クライアント Web サイト アプリケーションの ODataService のメソッドを次に示します。

これは、API で正しく動作する Postman で使用している Order オブジェクトと関連する OrderLineItem オブジェクトの json です。

Postman を使用して関連する OrderLineItems を持つ新しい注文を投稿すると、My API は注文と関連する OrderLineItem レコードを正常に作成します。ただし、Simple.OData.V4.Client を使用して投稿すると、Order レコードは作成されますが、関連する OrderLineItem レコードは作成されません。

Postman 経由でレコードを送信するときに OData API コントローラーを見ると、含まれている OrderLineItems と共に Order オブジェクトが渡されていることがわかります。

しかし、Web アプリケーションから Simple.OData.V4.Client を使用しているときに OData API コントローラーを見ると、OrderLineItems のカウントが 0 であるため、Simple OData クライアントは関連する OrderLineItem レコードを送信していないことがわかります。ただし、Web アプリケーションの OData サービスの CreatreOrderAsync メソッドに渡される Order オブジェクトで確認できます。

そのため、単純な OData クライアントが関連レコードを含めるために必要なものが不足していると想定する必要がありますが、単純な OData クライアントのドキュメントを確認した後、マスター/詳細タイプのクライアントの Post メソッドの例を見つけることができません。

ここで何が欠けていますか?

***** 2020 年 5 月 14 日更新 *****

Simple.Odata.Client は、ディープ リンク (1 回の操作でデータが関連付けられたモデル) をサポートしていません。Microsoft には、積極的に更新されている OData クライアントがあり、関連データをサポートしています。これはより複雑ですが、より柔軟でもあるようです (つまり、ODataClientFactory と DI のサポート)。ここにドキュメントへのリンクがあります。

Microsoft クライアントは、Connected Services を使用してプロキシをセットアップし、Visual Studio の API メタデータにリンクするという点で、WCF で行う必要があったことを思い出させます。LINQ クエリをサポートしている点と、実際のネットワーク呼び出しなしで単体テストできる IOdataClientFactory が気に入っています。