問題タブ [servicecontract]
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例外
ASP.NET Web サイトから WCF サービスを呼び出すと、次の例外が発生します。どうすればそれを克服できますか?
注: サービス プロジェクトにブレーク ポイントを適用することにより、サービスが 2 つの有効なオブジェクトを返すことを確認しました。
注: サービスでは、IBankAccount のリストを返しています。[OperationContract]
List<IBankAccount> GetDataUsingDataContract(int userId);
IBankAccount はインターフェイスです。
例外には、「基になる接続が閉じられました: 接続が予期せず閉じられました」と表示されます。詳細なスタック トレースは、次の図で確認できます。
//Webサイト
//サービス インターフェイス
//DTO
//サービスの実装
//ビジネス層
//データ アクセス層
読み方: 1. WCF オブジェクトの設計 - OOP と SOA
c# - 複数のサービス契約を持つ単一のエンドポイント
単一のエンドポイントを持つが複数のサービス コントラクトを持つ WCF Web サービスを作成するにはどうすればよいですか?
例:
IInternetService が私のメインの Web サービスであり、その中に IwiredService と IWirelessService を実装したいと考えていますが、それらのクラスで実装したいと考えています。これは可能ですか? どうすればこの問題を解決できますか?
wcf - WCF - よりオブジェクト指向の方法でサービスを定義するにはどうすればよいですか?
WCF 経由でリモート オブジェクト モデルにアクセスする最良の方法は何ですか?
オブジェクト指向モデルを持つシステム層 (A) が 1 つあり、別の層 (B) からこのモデルにアクセスしたい
必要なオブジェクトは、オンデマンドで B によって読み込まれる必要があります。例として、クラス C1 と C2 があり、C1 が C2 のリストを保持しているとします。このリストは、アクセスされたときにのみロードする必要があります。
データ コントラクトは操作コントラクトを保持できないため、「getC1」と「getListC2(C1)」の 2 つのメソッドを持つ 1 つのサービス コントラクトでこれを実装します。
しかし、私が実際に望んでいるのは、オブジェクト指向モデルにアクセスすることです。たとえば、C1 で関数を呼び出します: C1.getListC2
オブジェクト指向の方法で WCF を操作するにはどうすればよいですか?
wcf - Wcfサービスの継承(サービスの拡張)
私が取り組んでいるプログラムは、wcfを使用してコールバックとサービスの両方を公開しています。基本的に、サービスが行うことは、単にいくつかの変数値を返すことです。コールバックに関しては、それらは単にそれらの変数を更新します。
サービスのみを含む1つのクラスと、サービスとコールバックを含む1つのクラスを公開できるようにしたいと思います。
例えば :
サービスのみが必要な場合は、基本クラスを使用できます。ただし、コールバックをサブスクライブしてサービスを使用する場合は、ServiceAndCallbackClassを使用できます。
これは可能ですか?
c# - RequestSecurityTokenResponse は逆シリアル化されません
STS サーバーに接続している WCF クライアントを持っていますが、それを制御することはできません (これはサード パーティの PHP サービスです)。
数日間の調査の後、純粋に WCF を使用して受け入れる方法でサーバーと通信することができました。もちろん、すべての SOAP 要素を無視して、いくつかの文字をネットワークに配置するのは簡単でした。しかし、最終的にはすべての構成パラメーターを正しく推測することができたので、STS サービスは私の要求に次のように応答します。
しかし、今は識別子の値を抽出するのに苦労しています。私のプロキシ クラス ( ) では、と の考えられるすべての組み合わせをすべての型SecurityTokenServicePortTypeClient : ClientBase<SecurityTokenServicePortType>, SecurityTokenServicePortType
で試しました。しかし、私が得るのは.ServiceContract
DataContract
XmlSerialization
null
サービス コントラクトの (大幅に変更された) インターフェイスは次のようになります。
(大幅に変更された)実装クラスには、このようなメソッドがあります
x は常にnull
.
戻り値の型の代わりに、object
元はRequestSecurityTokenResponse
そうでした。
私は何年も前に WSE で同じ問題を抱えていましたが、たとえばXmlElementAttribute
逆シリアル化プロセスを制御するための適切な組み合わせを使用するだけで解決できました。しかし、今回は役に立たないようです。
アドバイスをありがとう!
ビョルン
c# - コンストラクターロジックインサービス契約
私はサービス契約を結んでいます:
私たちの開発者の何人かはこの種のことをしています:
「サービス参照の追加...」を使用し、Visual Studioによって生成されたプロキシクラスを使用している場合、そのコードは機能しないため、コンストラクターロジックはサービスコントラクトに属していないと思います。
内部的には、ここに示すようにCastleDynamicProxyを使用しています。ただし、何らかの理由でDynamicProxyを使用できない場合に備えて、開発者はサービスコントラクトクラスのコンストラクターロジックを避けたいと思います。
つまり、コンストラクターロジックはこれらのクラスに含まれるのでしょうか。それとも、ベストプラクティスとして、コンストラクターロジックをより多くのDTOと見なし、動作なしで実装する必要があるのでしょうか。
wcf - WCF ServiceContract と SOAP 応答が呼び出されない *Response
WCF を使用して SOAP コンシューマーを作成しています。
次の WCF サービス コントラクトでは、WCF は、応答に Body とHelloResponseという要素があることを想定しています。
私が呼び出しているサービスでは、実際にはHelloResultと呼ばれています。MessageContracts を使用せずに、これを WCF に伝えるにはどうすればよいですか? 次の組み合わせとバリエーションを試しましたが、成功しませんでした。
wcf - WCFコントラクトと名前空間?
やあ、
WCFのデータ/サービスコントラクトのデフォルトの名前空間はです"http://tempuri.org/"
。ServiceContract.Namespace
を設定することによりServiceBehavior.Namespace
、カスタム名前空間を取得できます。しかし、私はこれについていくつか質問があります:
- 名前空間を使用する必要があり
http://
ますか、それとも同じCLS名前空間に名前を付けることができますか? - MyApp.IOですべてのデータコントラクトを設定してCLS名前空間を使用する必要がある場合、すべてを手動で設定せずにこれを行う簡単な方法はありますか?
- CLS名前空間をサービス全体とそのデータコントラクトのコントラクト名前空間として設定する簡単な方法はありますか?
c# - イベントがヒットしない WCF サービスの実装
私は WCF Service インターフェイス、コントラクトを実装するクラス、およびホスティングの winforms アプリケーションを持っています。これにより、WCF サーバーに接続するワーカー プロセスが開始され、イベントがトリガーされます。クライアント ワーカー プロセスでは、メソッドの呼び出しに問題はありません。続いて、添付されたイベント ハンドラーが Windows フォーム アプリケーション内でも呼び出されることを期待していますが、これは発生していません。
Service クラスのインスタンスを servicehost に渡していますが、これはシングルトン インスタンスです。正しいインスタンスを参照していない理由について提供できるヘルプ/洞察に感謝します。
wcf - WCF での ServiceContract 属性の働き
WCFについて読み始めたところです。本の中で、著者は次のように述べています。
この
ServiceContract
属性は、その型の可視性とは関係なく、CLR インターフェイス/クラスを WCF コントラクトとしてマップします。
これはどのように可能ですか?与えられた説明は次のとおりです。
可視性は CLR の概念であるため、型の可視性は WCF とは関係ありません。
これがどのように可能か、私は本当に理解していません。誰か説明してくれませんか?