問題タブ [servicebehavior]
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.
c# - WCF サービスの Service Behavior でリクエスト メッセージのタイプ (request.GetType など) を取得する方法
メッセージがカスタム属性で装飾されているかどうかを推測するために、リクエストメッセージの Type を知っていることを期待するカスタム ServiceBehavior を作成しています。
サンプル コントラクトは次のようになります。
次を使用して、動作側でカスタム属性を識別しようとしています。
しかし、typeOfRequestは常に{Name = "BufferedMessage" FullName = "System.ServiceModel.Channels.BufferedMessage"}として入ってきます
request を使用してメッセージのタイプを推測できる方法はありますか?
注:コントラクトを保持するアセンブリを直接参照していますが、サービスはwsdlを介して参照されていません。
wcf - WCF OperationInvokerが別のWCFサービスを呼び出すときに401を取得する
LoggingImplementationBehavior
アタッチされているサービス呼び出しの前後に、WCF Logging サービスを呼び出すという属性があります。
これは、ローカルでも共有開発サーバーでもうまく機能します。ただし、ステージング サーバーでは、呼び出し元から Logging サービスが呼び出されると、401 エラーが返されます。問題が Logging サービスにないことを確認するために、すべてのコードをコメントアウトして何もしないようにしましたが、スタブが呼び出されたときにこのエラーが引き続き発生します。
IIS マネージャーでは、サーバー レベルとサービス Web サイト レベルの両方で匿名認証が有効になっています (それ以外は何もありません)。ダイジェスト認証は両方のレベルで無効になっているため、これらの 401 エラーの原因は何でしょうか?
他の人が大きなデータでこの問題を抱えているのを見てきましたが、ここで送信されるデータは非常に小さいです。
この問題のデバッグを続行する方法に関するヒントは、現在行き止まりにあるため、非常に高く評価されます。
エラーの正確なテキストは次のとおりです。
c# - サービスの動作をサービス参照に適用する
Web アプリケーションに、リモート サーバー上の .svc Web サービスへのサービス リファレンスを追加しました。この Web サービスからメソッドを呼び出すと、次のエラーが発生します。
内部エラーのため、サーバーは要求を処理できませんでした。エラーの詳細については、サーバーで (ServiceBehaviorAttribute または構成動作のいずれかから) IncludeExceptionDetailInFaults をオンにします。
最初の質問: 私のサーバーまたは .svc サービスがホストされているリモート サーバーで、IncludeExceptionDetailinFaults を有効にする必要がありますか?
2 番目の質問: IncludeExceptionDetailinFaults をオンにする必要がある場合、サーバーで web.config ファイルを適切に構成して、追加したサービス参照の動作を適用するにはどうすればよいですか。この投稿では、web.config のサービスに適用する方法について説明していますが、ソリューション エクスプローラーからサービス参照を追加したため、私の web.config にはサービスが定義されていません。(バインディングとクライアントのみが serviceModel ノードの下で自動的に定義されます) 注意すべきもう 1 つの点は、Visual Studio のデバッグでラップトップでローカルにアプリケーションを実行すると、エラーが発生しないことです。しかし、ソリューションをサーバーに公開すると、上記のエラーが発生します。
wcf - コンパイル済み Web サイトへの動作拡張の追加
VS 2012 でプリコンパイルされた Web サイト プロジェクトの一部である WCF サービスにCORS ヘッダーを追加しようとしています。
エラー
設定ファイルから
現在、MyWebSite.dll
コンパイル済みのサイトにはないようです。では、どうすればこれを乗り越えて BehaviorExtension を機能させることができるでしょうか?
.net - プログラムで IIS がホストする WCF サービスの ServiceThrottlingBehavior を設定する方法
私はこのオブジェクトをどこに押し込むべきかを理解しようとしています:
これを web.config で構成する方法に関する情報を見つけましたが、それについて少し混乱しています。以前は、web.config に次のようなものがありました。
それでもそれを使用していれば、web.config を介してスロットリングを構成する方法を正確に知ることができますが、これらすべてのエンドポイントを web.config から取り出すことができ、すべてが引き続き機能し、そうしなかったためメンテナンスが少なくなることがわかりました。バージョンや環境が異なる場合は、アドレスを更新する必要があります。
これをプログラムで ServiceHost に設定する方法に関する情報も見つけましたが、プログラムで ServiceHost を作成していません。IIS に任せています。
では、web.config を使用せずに ServiceHost を自分で作成することなく、スロットリングを設定するプログラムによる方法はありますか?
<service />
編集:または、サービスごとにエントリを作成せずに web.config でこれを行う方法はありますか?
c# - IncludeExceptionDetailInFaults をテストする方法
動作が設定されているかどうかは、次の方法で確認できます。
ServiceBehavior 属性内で特定のプロパティが定義および設定されているかどうかを確認するにはどうすればよいですか? たとえば、IncludeExceptionDetailInFaults: