問題タブ [operationcontract]

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.

0 投票する
1 に答える
262 参照

wcf - WCF の System.ServiceModel.Channels.Message で操作のパラメーターを見つける

次の Service コントラクトがあるとします。

System.ServiceModel.Channels.Message で作成されたサーバー側で、たとえば parameter1 の値など、特定のパラメーター値をどのように見つけることができるのでしょうか。

ありがとう!

0 投票する
1 に答える
2863 参照

wcf - ジェネリックリスト(リスト)WCF OperationContractのパラメーターとして?

Generic List(リスト)をパラメーターとしてWCF OperationContractに送信できますか?

それを行う唯一の方法は、リストを別のクラス内のDataMemberとしてカプセル化し、クラスをDataContractとして指定することのようです。

しかし、それは私には正しく見えません。他に方法はありますか?

EDIT1:
意図された署名:

これは、クライアントでCustomObject[]に変換されます。現在、クライアントからCustomObject []を渡していますが、正常に動作しますが、渡せない理由を知りたいです。

これにより、指定されたパラメーターを受け取る関数のオーバーロードされたバージョンがないというコンパイルエラーが発生します(型の不一致エラー)

編集2:
関連する質問:
1)サービス自体からこれを制御できるはずです。サービスを全世界に公開していて、wsdl / Proxyが私のOperationContractの署名を知る唯一の方法である場合はどうなりますか?
2)同じサービスコントラクトの異なるオペレーションコントラクトでSystem.ArrayとSystem.Generic.Listの両方を使用したい場合はどうなりますか?

0 投票する
2 に答える
10071 参照

c# - インターフェイスを WCF で DataContract として使用する方法

標準の wsdl を使用して Web サービス操作を呼び出す必要がありますが、データ オブジェクトはクライアントとサーバーで異なる必要があります。

共通ライブラリでデータ オブジェクトのインターフェイスを使用し、クライアントとサーバーでそのプロキシ クラスを作成します。

そしてインターフェースを使ってオペレーションコントラクトを宣言しているのですが、WCFが認識しません。

私はまだ DataContractSerializerBehavior を使用して knownTypes を設定しようとしましたが、まだ成功していません。

誰かが私を助けることができますか?詳細を含む完全なソリューションを添付しました。

ここをクリックして、TestCases を使用した GitHub のサンプル プロジェクトを参照してください。

0 投票する
1 に答える
37 参照

wcf - WCF バインディング フィルター オプション

(OperationContract)あるコントラクトのいくつかのメソッドを 1ServiceContract)つのバインディングに公開し、同じコントラクトのWCF残りのメソッドを他のバインディングに公開することは可能ですか?(OperationContract)(ServiceContract)

0 投票する
1 に答える
582 参照

wcf - 単一の操作で WCF 認証を無効にすることはできますか

私は最近、WCF セキュリティ ガイドを読み、それを使用して、ユーザーが自分のアカウントを作成し、メッセージ セキュリティでアプリケーションにアクセスする必要があるアプリケーションを作成しています。以下は、本からこれまでに思いついた web.config ファイルです。私が抱えている問題は、ユーザー登録に関するものです。アプリケーションはユーザー名/パスワード認証を必要とするため、新しいユーザーを登録する方法は常に失敗します。

これを回避する1つの方法(ロールベースの認証に切り替え、登録特権を持つロールで単一のユーザーを作成し、その情報を登録方法にハードコーディングするだけ)は知っていますが、別の解決策を探しています。特定のメソッドが認証を必要としないことを操作レベルで宣言する方法はありますか? そうでない場合、別のサービス コントラクトで別のエンドポイントを公開し、そのコントラクトに認証を要求しないようにする方法はありますか? web.config ファイルの多くはメンバーシップ プロバイダーとメッセージ セキュリティに関連しているため、少し心配ですが、データベースに新しいメンバーを適切に登録する方法については、明らかにメンバーシップ プロバイダーについて知る必要があります...

新規ユーザー登録機能です。

0 投票する
1 に答える
801 参照

wcf - [OperationContract] メソッドに引数としてコレクションがある場合、サービス参照の更新が機能しない

理解できない非常に奇妙な問題があります。[OperationContract]メソッドが属性で装飾されているWCFインターフェイスがあります。次に、インターフェイスを変更するたびに更新する Service Reference フォルダーがあります。

私のインターフェイスで、任意のコレクションを引数 ( 、 など) として受け取るメソッドを宣言するまで、すべてが正常に機能しList<T>ます。Array<T>IEnumerable<T>

次に、「サービス参照の更新」を実行すると、エラーなしで終了しますが、生成されたReference.csファイルは空です。

[サービス参照の構成] ウィンドウで、[コレクションの種類] を [System.Collection.Generic.List] に設定しています。

Operation Contract メソッドでコレクション型を引数として使用できない理由を知っている人はいますか? またはそれを修正する方法は?

ご協力ありがとう御座います。

0 投票する
1 に答える
1188 参照

wcf - OperationContract 名と UriTemplate

サービスメソッドを作成します。これには OperationName と UriTemplate があります。私のシナリオに基づいて、この 2 つの名前を混同しています。

私の理解

エイリアスなどのメソッドの名前を指定する操作コントラクト名。したがって、UriTemplate を指定しなかった場合、name 属性で指定された名前は、以下のような名前として取得されます

UriTemplate を使用してパラメーター バインディングをバインドし、パラメーター マッピングをカスタマイズできるようにします。したがって、 /MyMethod/{p1} のような UriTemplate を追加すると、サービスは次のように表示されます

これが私の混乱です。それで、両方を追加しても名前に影響はありませんか?次に、使用するベストプラクティスです。正確な意味と、使用するベストプラクティスを教えてください。

0 投票する
1 に答える
611 参照

wcf - WCF はインターフェイスを実装できません - 一致する戻り値の型がありません

このエラーが発生する理由:

エラー 1 'JoomlaWebservice.KundeService' はインターフェース メンバー 'JoomlaWebservice.ServiceInterface.HentOpgave(int)' を実装していません。「JoomlaWebservice.KundeService.HentOpgave(int)」は「JoomlaWebservice.ServiceInterface.HentOpgave(int)」を実装できません。「JoomlaWebservice.Opgave」の一致する戻り値の型がないためです。C:\Visual Studio 2010\Projects\JoomlaWebservice\JoomlaWebservice\KundeService.svc.cs 12 18 JoomlaWebservice

コード (サービス):

コード (インターフェース):