[Display(Name = "My Display Name")]でプロパティを装飾しているDTOがあります。WCF表示属性
私はWCFサービスを使用していますが、その属性が機能していないようです。私のサービス参照を調べると、生成されたDTOクライアント側に属性が適用されていません。
多分私は何か間違っていますか?
[Display(Name = "My Display Name")]でプロパティを装飾しているDTOがあります。WCF表示属性
私はWCFサービスを使用していますが、その属性が機能していないようです。私のサービス参照を調べると、生成されたDTOクライアント側に属性が適用されていません。
多分私は何か間違っていますか?
作成したクラスとオブジェクトは、サーバー側が存在しません。クライアント側。 WCFを使用しているときは、クラスのインスタンスをデータ(通常はXMLですが、バインディングに応じてバイナリにすることもできます)にシリアル化し、インターネットを介して送信し、のようなインスタンスにデシリアライズします。クラスのクライアント側。この類似のクラスは、通常、サービスのWSDLに基づいたサービス参照によって作成されます。
これは、サーバーサイドクラスのプライベートフィールドがクライアント側クラスに表示されない理由です。属性をクライアント側で使用できるようにするには、クライアント側で属性を手動で追加する必要があります。
これは、サーバーとクライアントの両方を制御すると、両者で同じクラスを使用できるようにするためのトリックがあります。最も簡単なのは、すべてのDataContract
クラスを別々のアセンブリに入れ、それをサーバーとクライアントの両方から参照することです。サービス参照を使用してクライアントサイドプロキシを生成する場合は、プロキシ生成時に「参照されたアセンブリ内の型を再利用する」にチェックを入れてください。
できません。属性は、SOAPメッセージでDTOとシリアル化されません。これは、属性がプラットフォームに依存しないためです。あなたのサービスは、.NETの実装が不要なクライアント向けであると考えてください。
ありがとう、私が思ったことは、すでに私がワイヤの両側を共有し、それから離れたdtoライブラリを持っていました。一歩前進したように見える。 – David