問題タブ [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.
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
dynamics-crm - CRM はエンティティ参照プロパティの直接更新をサポートしていません。代わりにナビゲーション プロパティを使用してください
シンプルな OData で Ms Dynamic Web Api を使用しています。リンク エンティティの新しいレコードを追加する必要があります。
以下のコード スニップを使用して、 https://github.com/object/Simple.OData.Client/wiki/Adding-entries-with-linksのドキュメントを参照しています。
私は例外を取得しています
CRM はエンティティ参照プロパティの直接更新をサポートしていません。代わりにナビゲーション プロパティを使用してくださいS
c# - Simple.OData.Client で証明書認証を使用するには?
Simple.OData.Client で証明書認証を行う方法は? APIの呼び出し中に使用したいX509Certificate2があります。.net フレームワーク 4.6 を使用しています。
いくつか検索したところ、HttpClientHandler を介して追加できることがわかりました。しかし、私はそれを行う方法を理解することができません。以下は私が持っているコードです。
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 found
CS7069
私はいくつかのグーグルをして、これを見つけました。それをどこに追加すればよいかわかりません。
追加しましSystem.Runtime
たが、何もしませんでした。
このソリューションは、3 つのプロジェクトを使用した変更されていない xamarin クロスプラットフォーム ソリューションと考えてください。
SharedProject
、Android
およびiOS
バージョンの不一致はありますか? もしそうなら、これらの参照のどのバージョンが相互に互換性がありますか?
前もって感謝します :)
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 を送信することは可能ですか?
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 が気に入っています。