問題タブ [wcf-data-services]
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.
rest - ado.net データサービス呼び出しの guid REST URL?
残りの URL で guid をリソース ID として使用しようとしていますが、方法に関するリソースが見つかりません。今のところ私のベスト (動作していません ) : guid....} 中かっこ付き まだうまくいきません。
私は得るだけです:位置0の構文エラー '"'。
質問: (仕様に関して) ID が GUID であるリソースの URL をどのように記述しますか?
.net - ADO.Net Data Service アプリケーションを IIS にロールアウトする際の問題
ADO.Net Data Service ルックアップ機能を既存の Web ページに追加しています。Visual Studio から実行するとすべてがうまく機能しますが、IIS に展開すると、次のエラーが発生します。
リクエスト エラー
サーバーでリクエストの処理中にエラーが発生しました。詳細については、サーバー ログを参照してください。
デフォルトのページを表示しようとしても、次のようになります。
サーバーに 3.5 SP1 がインストールされています。
不足しているものと、それが参照している「サーバー ログ」は何ですか? これ以上のエラー メッセージは見つかりません。
イベント ビューアー ログ (システムまたはアプリケーション) には何も記録されておらず、GET 以外の IIS ログには何も記録されていません。
2008-09-10 15:20:19 10.7.131.71 GET /FFLookup.svc - 8082 - 10.7.131.86 Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-US)+AppleWebKit/525.13 +(KHTML,+like+Gecko)+Chrome/0.2.149.29+Safari/525.13 401 2 2148074254
スタック トレースは返されません。私が得る唯一の応答は、上記の「リクエストエラー」です。
ありがとう
パトリック
rest - ADO.Netデータサービスは、POSTが作成以外のものであることをどのようにサポートしていますか?
これまでに読んだドキュメントから、ADO.Netデータサービスは、CRUDのようなインターフェイスをデータベース内のテーブルにRESTfulな方法で公開する方法として位置付けられています。これは、これら4つの操作のみを実行するアプリケーションには最適ですが、それ以上の操作を実行するアプリケーションについてはどうでしょうか。
Print、Approve、Submit、Copy、Transfer、Process、Calculateなどの動詞についてはどうでしょうか。
RESTfulアプリケーションの一般的なアプローチは、これらの追加のリクエストを実行するために対話できる新しいリソースを作成することです。例:印刷操作を実行するために投稿できるプリンタリソースを作成します。ただし、これらのリソースは、必ずしもデータベース内のテーブルまたはビューにマップされるとは限りません。
ADO.Net Data Servicesは、テーブルにマップされないこれらのリソースをどのように処理しますか?例として、給与を計算していて、エンドポイント/ PayrollService/PayCalculatorを作成したとします。一部の従業員情報とその総賃金を含むエンティティをPOSTすると、PayCalculatorリソースに従業員の福利厚生と控除額を返すように指示されます。
linq - LINQ to ADO.net データ サービス クエリで Expand を使用する代わりにどのような方法がありますか?
LINQ to ADO.net Data Services クエリを実行するときに、Expand キーワードを使用する代わりの方法があるかどうか疑問に思っています。expand メソッドは目的のデータを取得しますが、使用するサブオブジェクトをすべて事前に把握しておく必要があります。私の絶対的な好みは、それらのサブオブジェクトにアクセスするときに遅延ロードされることですが、これはオプションではないようです (この遅延ロードを get on そのサブオブジェクト プロパティに追加することもできますが、データ サービス参照の更新を行うと消去されます)。
この状況に対する提案/ベストプラクティス/代替手段はありますか? ありがとう。
===== MailingAddress を持つ Member を使用したコード例 =====
作品:
優先します (これが行って MailingAddress をロードした場合は本当に好きです)
または、少なくとも (注: サービス操作で LINQ to Entities として実行すると、MailingAddressReference を使用してこれに似たものがサーバー側で機能します)
entity-framework - ADO.Net Data Services で .SaveChanges() メソッドを使用する最良の方法は何ですか?
.SaveChanges() メソッドの使用法に関する良い情報を持っている人はいますか?
データ コンテキスト オブジェクトで .SaveChanges() メソッドを使用しようとすると、さまざまな問題が発生します。既存のデータ ソースからデータを取得し、適切な EntityFramework/DataService オブジェクトを作成し、作成したオブジェクトにデータを入力し、それらのオブジェクトをコンテキストに追加してから、.SaveChanges を呼び出してそのデータを保存しています。
私が思いついたシナリオ (およびそれらに関連する問題) は次のとおりです...各シナリオでは、DataTable の行からデータを取得してオブジェクトを生成し、それらをコンテキストにアタッチする foreach ループがあります。彼らが行く。(注: SetLink 呼び出しを介してアタッチされた 3 つのオブジェクト「メンバー」と 2 つの「アドレス」) - 基本的に、これは 1 つのデータ ストアからデータを取得し、それを Data Services によって公開されるデータ ストアに変換するための変換ツールです。
- foreach ループの最後 (つまり、ループの外側) で、パラメータなしで .SaveChanges() を 1 回呼び出します。
- 約 1/3 の OutOfMemory エラー (90,000 回の保存のうち 30,000 回) - 各保存項目はデータベースへの個別の SQL 呼び出しであるため、どのように発生しているのかわかりませんが、メモリ不足になる原因は何ですか?
- ループごとに 1 回、パラメータなしで .SaveChanges() を呼び出します
- これは機能しますが、絶対に永遠にかかります(90,000回の保存で8時間)
- foreach ループの最後に .SaveChanges(SaveChangesOption.Batch) を 1 回呼び出します。
- 同じ OutOfMemory エラーですが、データベースへの保存はありません
- ループごとに .SaveChanges(SaveChangesOption.Batch) を 1 回呼び出す
- 404 見つからないエラー
- 10 ループごとに .SaveChanges(SaveChangesOption.Batch) を 1 回呼び出す
- 400 Bad Request エラー (時折)
- 何度か繰り返した後の OutOfMemory
- ループごとに 1 回コンテキストを作成するか、ループの開始時にコンテキストを変数として使用するか、使用可能なプライベート メンバー変数として使用するためのランダムな試行回数。
- さまざまな結果、定量化できない、それほど良いものはありません
このような大量のデータの読み込みを行うときに、クライアント オブジェクトから .SaveChanges() を呼び出す方法として推奨されるものは何ですか? .SaveChanges() がどのように機能するかについて私が得ていないものはありますか? この機能をどのように利用すべきか、および Data Services を介してデータを保存する際の制限事項 (ある場合) について、詳細を提供できる人はいますか? .SaveChanges() メソッド呼び出しに関するベスト プラクティスはありますか? .SaveChanges() メソッド呼び出しに関する特に優れたドキュメントはありますか?
entity-framework - ADO.Net Data Services では、エンティティが既にコンテキスト内にあるかどうかを確認するにはどうすればよいですか?
データのインポートに使用している ADO.Net Data Service があります。ほとんどのエンティティがリンクしているエンティティが多数あります。インポート中にそれを行うには、最初にこれらのエンティティを作成し、保存してから .SetLink(EntityImport, "NavigationProperty", CreatedEntity) を使用します。ここで最初に遭遇した問題は、コンテキストが CreatedEntity を常に認識しているとは限らないことでした (これは、各エンティティが個別にインポートされ、各アイテムが作成されるときにコンテキストが作成されるためです。この機能を保持したいと思います)。 -つまり、答えとして「1つのコンテキストのみを使用する」ことを避けようとしています)。
したがって、SetLink を呼び出そうとする前に .AddToCreatedEntityType(CreatedEntity) があります。もちろん、これは初めて機能しますが、2 回目のパスで「コンテキストは既にエンティティを追跡しています」というエラー メッセージが表示されます。
コンテキストが既にエンティティを追跡しているかどうかを確認する方法はありますか (context.Contains(CreatedEntity) はまだ実装されていません)。try catch を試みてエラーを回避することを考えていましたが、パスごとに新しい CreatedEntity が作成されるようです。LINQ to Data Services を使用してその CreatedEntity を毎回取得する必要があるように見えますが、それは効率が悪いようです - 何か提案はありますか?
wcf-data-services - ADO.NET データ サービス -- 非 .NET コンシューマー
ADO.NET Data Service の非 .Net コンシューマーの例に出くわした人はいますか? Astoria とは何か、どのように使用できるかを調べて 2 日目です。また、なぜWebサービスの代わりにこれを使用するのですか?
サンプルを実行した後、システムからデータを取得するための RESTful なアプローチを取得します。そして、それを .net クライアントにプラグインするのは非常に簡単です。しかし、.NET 以外のコンシューマがどのように対処するのか疑問に思いました。
どんなアイデア(ポインタ)も間違いなく高く評価されています...
entity-framework - ADO.NET Data Services (Astoria) を介して Entity Framework Function Import として公開されているストアド プロシージャを呼び出すにはどうすればよいですか?
Entity Data Model を作成し、いくつかのストアド プロシージャを Function Imports としてインポートしました。ADO.NET Data Services (ANDS) を介して EDM を公開しています。ANDS は REST API を介して関数を自動的に公開しますか? それとも、手動で操作をサービスに追加する必要がありますか?
.net - ADO.Net Data Servicesの部分(Entity Framework)クラスで定義された読み取り専用プロパティを使用するにはどうすればよいですか?
Entity Frameworkによって定義されたオブジェクトがあり、部分クラスを介して追加のメソッドとプロパティを追加しました。私はこれを行うことに関する制限のほとんどを理解していると思いますが、私が見ているものを確認したいと思いました(またはうまくいけば、この作業を行うために何をする必要があるかを学びました)。
いくつかの項目を使用して読み取り専用の計算フィールドを作成する読み取り専用プロパティを持つ部分クラスがあります。私が期待/期待していたように、読み取り専用プロパティがADO.NetDataServicesを介して戻ってこないのを見るのは不思議でした。つまり、エンティティフレームワークのプロパティと、部分クラスを介してコードで定義されているプロパティがDataService呼び出しを介して取得されることを期待していました。
これは本当ですか?ADO.Net Data Servicesがデータをクエリしているときに、部分クラスは完全に無視されますか?もしそうなら、読み取り専用タイプのプロパティをエンティティに取得するためのベストプラクティスは何ですか(異なる名前空間を持つ同じ部分クラスがクライアント側とサーバー側の両方のコードベースに切り取られて貼り付けられるのを避けたいため)。
silverlight - Silverlight から ADO.Net Dataservice 呼び出しをモックする方法
Silverlight アプリケーションから ADO.Net Data Service 呼び出しを模倣する良い方法を見つけた人はいますか?
Data Services の力は、エンティティに対するクライアント側の linq の使用にあるようです。しかし、データ アクセスを行うオブジェクトをテストする場合、どのようにサービスをモック化できるのでしょうか?
1 つの方法は、モック データ サービス全体を作成することですが、その場合、すべてのオブジェクトを再作成する必要があります。
役立つモック フレームワークはありますか?