問題タブ [wcf-web-api]
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.
api - アプリケーションの変更が API を壊すのを防ぐ
私は現在APIを書いているアプリケーションを持っています。API を最初から最後まで作成したのはこれが初めてで、多くの優れた記事とその方法を読みました。しかし、その資料の多くは特に API 開発に焦点を当てていますが (そうあるべきです)、アプリケーション プロジェクト内で発生する変更によって API が壊れないようにする方法に触れているものは見つかりませんでした。
私のアプリケーションは、サービス層を呼び出して CRUD のような操作を行う ASP.NET MVC Web アプリで構成されています。したがって、アプリ内のすべてのユーザーのリストを取得するために、MVC アプリはサービス レイヤーを呼び出して要求し、ユーザーのコレクションが表示されます。私の API (WCF Web API) もこのサービス層を内部的に使用しており、ユーザーのリストを要求すると、再びユーザーのコレクション (JSON、XML など) が返されます。
ただし、何らかの理由で別の開発者がフィールドの名前を姓に変更して、基礎となるユーザー ドメイン オブジェクトを変更した場合、サービス レイヤーが新しいフィールド名を持つユーザー オブジェクトを API に返すため、API が壊れる可能性があります。他の何かを期待しているとき。実際、私の API には、要求時にアプリケーション オブジェクトにマップされるオブジェクトの独自の表現がありますが、このマッピングは姓のプロパティをマップせず、null として返されます。
したがって、API を提供するため、アプリのすべての変更を厳密に管理する必要がありますか? その場合、アプリと API を同時に変更する必要がありますか? 変更が見逃された場合はどうなりますか? 前述は私には正しくないように思われるため、より多くの知識を求めるための私の投稿です。
繰り返しますが、私はこれにまったく慣れていないので、これに関する助けをいただければ幸いです。
.net - ヘッダー値を取得する方法
WCF Web API の Web メソッドからヘッダー値にアクセスするにはどうすればよいですか?
c# - マルチパートファイルアップロードからメモリへのコンテンツの読み取り
アップロードされたXMLファイルをファイルではなく文字列に読み取るのに問題があります。
私の問題は、ストリーム(var stream = part.ContentReadStream
)にアクセスしようとすると閉じられることです。閉じたファイルストリームにアクセスしているように感じます。MultipartFormDataStreamProviderを誤って使用していますか?ファイルサイズはわずか数キロバイトなので、問題はないはずです。
これは私の投稿です
asp.net-mvc - WCF Web API - オブジェクトへのモデル バインド (要求 HttpOperationHandler に、割り当て可能な型の出力パラメーターがあることを確認してください...)
WCF Web API Preview 5 で、奇妙な動作に対処しています。シナリオは次のとおりです。
これは私のモデルです:
これは API です:
次のコードで API を登録しました。
次の URL でサービスにアクセスしようとすると、次のエラーが発生します。
localhost:36973/Dummy/person?id=1&name=Tugberk&surname=Ugurlu&age=24
サービス操作 'Get' は、タイプ 'Person' の入力パラメーター 'person' の値を受け取ることはありません。要求 HttpOperationHandler に、'Person' に割り当て可能なタイプの出力パラメーターがあることを確認してください。
しかし、以下のように API ロジックを変更すると機能します。
WCF Web API では、ASP.NET MVC のように機能していないと思います。
WCF Web APIでオブジェクトにモデルをバインドする方法は何ですか?
アップデート
別の方法を追加しました:
次の詳細でこのメソッドを呼び出すと:
方法: ポスト
URL: http://localhost:36973/Dummy/put
Accept: / Content-Type:text/xml
コンテンツの長さ:189
体:
私は必要なものを手に入れました。では、カスタム オブジェクトへのクエリ文字列のバインドは許可されていないのでしょうか?
wcf - WCF Web API に関する最新のドキュメントはどこにありますか?
私は WCF で REST を希望どおりに動作させるのに苦労してきました。そして、どうやら他の多くの人もそうです。WCF Web Api プロジェクトについて聞いたことがありますが、詳しく調べずに間違って却下しました。悲しいことに、今見てみると、ドキュメントがかなり古くなっていることがわかりました。同様に、このブログ投稿にはいくつかの素晴らしい情報がありますが、クラスが変更され、パラメーターが変更され、つまり設計が変更されました。
そのため、シリアライザーとして Json.NET (newtonsoft) をプラグインする方法の古い例を使用してきましたが、それを機能させた後、私の IErrorHandler では機能しないことに気付きました。さらに、uri テンプレートから操作の Type パラメータに文字列を逆シリアル化する方法に問題がありました。
ただし、メディア フォーマッタ拡張ポイントとProcessor<..>
、古いドキュメントで sと呼ばれるものを使用することで、これら 2 つの問題 (およびおそらくまだ遭遇していない他の多くの問題) を解決できるはずHttpOperationHandler<..>
です。誤解している。
私の問題はかなり基本的なものです。正しく実装したと仮定して、IIS でホストされているアプリを操作ハンドラーを使用するように正しく構成する方法がわかりません。このような基本的なことについて指示を求めるのはかなりばかげていると思うので、この種のことを行う方法に関するドキュメントをどこで見つけることができるかを尋ねます。(もちろん説明は大歓迎です。)
私は、どのクラスが存在するか、またはそれらのメソッドがどのパラメーターでどのような名前になっているのかを見た後ではありません。これらはすべて、オブジェクト ブラウザーで確認できます。全体的な設計のドキュメント、および/または次のようなことを暗黙的に説明する例が必要です。
- API のさまざまなクラスはどのように組み合わされますか?
- web.config から構成するにはどうすればよいですか?
- カスタム HttpServiceHostFactory を実行する必要がありますか?
- フレームワークを何に、どのように使用するつもりですか?
- どのような目標を達成するためにどのように拡張する必要がありますか?
- 拡張機能を有効にするには、どのように構成すればよいですか?
json.net - webapiを使用してネストされたarraylistでjsonデータを投稿するにはどうすればよいですか
リストデータをjson形式で返したい.これらのpocoクラスを使用して2つのpocoクラス(Order、Items)があり、データをjson形式に戻したい
webapiを使用して返してほしいJson形式のサンプル。
wcf - .NET フレームワーク 3.5 用の WebApi HttpClient
.Net Framework 3.5 用の WebApi の利用可能なパッケージはありますか? WebApi の HttpClient コンポーネントを使用することを特に楽しみにしています。
.Net 3.5 で動作する代替手段はありますか?
wcf-web-api - Get the Header Value In wcfWebapi Using Handler
How can i get the Header value in the WcfwebApi using the Handler before entering the Web-method .
odata - DateTimeOffset による Wcf Web API フィルター
私は現在 WCF Web API Preview 5 を使用しており、LastModifiedDate が提供された datetimeoffset 以上であるユーザーのリストをフィルター処理しようとしています。
しかし、私が得ているのは次のようなエラーだけです:
このフィルターは要求されたユーザーを返すため、フィルタリングは正常に機能しているようです
DateTimeOffset フィルターで動作させることができないので、フィルターを正しく作成していませんか? それとも他に何かあるのでしょうか?
.net - WCF Web APIおよびEntity Framework ICollectionオブジェクト:メンバーをシリアル化できません...インターフェイスであるため
WCF Web API Preview 6 で、サービスの 1 つで、EF 4.2 から直接取得したオブジェクトを使用したところ、次のエラーが発生しました。
System.Collections.Generic.ICollection`1[[DataAccess.SqlServer.AccommProperty, DataAccess, Version=1.0.4350.30311, Culture=neutral, PublicKeyToken=null]] 型のメンバー DataAccess.SqlServer.Resort.AccommProperties をシリアル化できません。インターフェース。
これは私のサービスのコードです:
以下は、上で公開しようとしている Resort クラスです。
エラー メッセージにあるように、 I can't serialize an interface . しかし、すべての EF オブジェクトをどうすればよいのでしょうか?