問題タブ [datacontracts]
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.
wcf - コレクションデータ契約の共有
いくつかの WCF サービスがあり、これらのサービスのデータ コントラクトを独自のアセンブリに分離しました。次に、データ コントラクト アセンブリを参照するサービスのクライアントを用意します。
Reuse types in referenced assemblyのオプションをオンにしました。これは機能しますが、コレクションでは機能しません。プロキシ ジェネレーターは代わりに独自のバージョンのコレクションを生成しますが、そのバージョンはデータ コントラクト アセンブリのバージョンとまったく同じです。
独自の冗長なコレクション型を生成するのではなく、データ コントラクト アセンブリで定義されたコレクションを再利用するようプロキシ ジェネレーターに指示する方法はありますか?
wcf - WCF でのビジネス列挙型から DatContract 列挙型への変換
私は列挙型を持っています
同じ値を持つ WCF の datacontract と同じ列挙型があります。トランスレータを使用して Business 列挙型を DataContract 列挙型に変換する必要があります。
これを達成できますか?
wcf - WCFに使用できないタイプはどれですか?
Type
実際のところ、WCFサービスに渡すときに使用できないことを知っています。誰かが完全なリストを持っていますか?
wcf - DataContractSerializer KnownType属性が尊重されていませんか?
クラスの型を持つ KnownType 属性で装飾されたクラスがあります。これは許されませんか?
その場合、DCS が次の例外をスローするのはなぜですか?
{「行 1 位置 387 のエラー。要素 ' http://schemas.microsoft.com/2003/10/Serialization/Arrays:Value ' には ' http://schemas.datacontract.org/2004/07/のデータが含まれています。OCC600.Infrastructure.Dictionary.BusinessEntities:Occ600UIConfig ' data contract. The deserializer has no knowledge of any type that maps to this contract. 'Occ600UIConfig' に対応する型を既知の型のリストに追加します。たとえば、KnownTypeAttribute 属性を使用します。または、DataContractSerializer に渡される既知の型のリストに追加します。"}
json - Asp.Net MVC 2とAsp.Netサーバー側のC#コード間でJsonデータを共有しますか?
Asp.NetMVC2アプリケーションを作成して気に入っています。これは、ドメインモデルクラス、ビューモデルクラス、リポジトリ、およびデータを公開するためのJsonアクションメソッドを備えた非常に優れたDDDアプリです。
私の同僚は、私のデータを彼のAsp.Net FormsベースのC#コードと共有したいと考えています。彼は、インターネットを介してクラス定義(データコントラクトなど)を取得し、リモートリポジトリなどを効果的に使用して、Jsonの結果を入力したいと考えています。
彼にデータ契約とデータを提供する方法に関するリンクやアイデアはありますか?
Darin Dimitrovは、ここでデータコントラクトを使用してJSONデータを消費するという優れたアイデアを持っていました。これらのアイテムのソースとしてMVCを使用できるかどうか疑問に思ったら、彼に、私の側からのデータで満たされたオブジェクトを彼の側に作成させます。
この質問の鍵は、彼に私のデータクラスを送信してから、彼に私のデータを送信する方法です。
wcf - WCF サービス データ コントラクトで基本型を非表示/フラット化する方法はありますか?
次の簡単な例を考えてみましょう。
基本クラス Base には、WCF サービス コンシューマーにとって重要なプロパティはありませんが、WCF では、基本クラスに [DataContract] 属性で注釈を付けることも強制されます。これは基本的に、プロパティのない空のクラスとしてサービス クライアントに表示されEmployee : EmployeeBase
ます。EmployeeBase
Base<T>
この方法でクラスをサービスに公開したくないので、どのようなオプションがありますか?
- Employee クラスの DTO - この複雑さを加えたくない
- Employee のデータ コントラクトが から継承していることを公開しないように、DataContract 階層を "フラット化" し
Base<T>
ます。これは可能ですか?どのように? - 他の解決策は?
ありがとう。
serialization - RIA DomainService が DataContracts を使用してクライアント コードを生成しない
Silverlight 4.0 アプリケーションで作業しており、RIA サービスを使用しています。サーバー側に、DataContract および DataMember 属性が適用されたクラスを作成しました。
DomainService は、このクラスをクエリ結果として公開し、クライアントでコードを生成します。しかし、どういうわけか、クラスのすべてのプロパティのコードを生成するわけではありません。タイプ guid、string、int、bool などのプリミティブ プロパティは正常に生成されますが、独自の複雑なタイプのプロパティがある場合、そのプロパティはクライアントで作成されません。
問題のクラスは次のとおりです。
Guid プロパティは、クライアント上で問題なく作成されます。SummaryGroup プロパティはクライアントで作成されません。SummaryGroup のコードは次のとおりです。
両方のクラスが同じネームスペースにあります。
質問: クライアントで SummaryDataSet の SummaryGroup プロパティが作成されないのはなぜですか? これを修正するにはどうすればよいですか?
wcf - C#WCFデータコントラクト部分クラス-2番目の部分クラスの新しいフィールドが取得されていません
いくつかのデータ契約を結んでいるWCFサービスがあります。私はWebサービスソフトウェアファクトリーを使用しています。このファクトリーは、デザイナーを使用してすべてのメッセージとデータ、およびその他のコントラクトを作成し、それらを部分的なクラスとして作成します。コードが再生成されると、クラスが再作成されます。
データコントラクトは、正常に機能していたカスタムクラスの一般的なリストです。ただし、このクラスにプロパティを追加したいので、同じ名前空間にこの部分クラスを追加しました。
これはサービス側では正常に機能しているようですが、クライアントからサービス参照をコンパイルして更新すると、クラスに新しいプロパティがありません。つまり、クラスをシリアル化してクライアント側で再作成すると、新しいプロパティが失われます。財産。なぜこれなのか誰もが知っていますか?
TIA
編集:わかりました、これは公式に私を狂わせています。私が見ることができる唯一のことは、DataContractの代わりにCollectionDataContract属性を使用しているということです。これはどういうわけかクラスのデータメンバーをシリアル化することを許可しませんか?なぜそうなるのでしょうか?サービス側では正常に機能しています。値を確認して入力しても問題ありません。ただし、クライアントでサービス参照を更新しても、データメンバーのないコレクションクラスだけで何もありません。
.net - 変更できないライブラリ内のクラスの Wcf データ契約
こんにちは、メソッドを実行するクラス ライブラリがあり、メソッド呼び出しのパラメーターとして使用するさまざまなクラスが多数あります... このクラス ライブラリの wcf ラッパーを作成しています。クラスライブラリを変更する権限がありません。
今私の質問は、これらのクラスをデータ契約/データメンバーとして簡単に公開するにはどうすればよいですか?
これらのメソッドに必要な約100の異なるクラスがあります。
ありがとう
wcf - クラス定義外の WCF シリアル化情報
次の単純なシナリオを想定してください。私のクライアントは既に動作している .net アプリケーションを持っており、WCF を介していくつかの機能を公開したいと考えています。それで彼は、次のメソッドを公開する public クラスを含むアセンブリを私にくれました。
ここで、OrderDetail (Amount) の一部のメンバーをシリアル化しないようにします。http://msdn.microsoft.com/en-us/library/aa738737.aspxによると、これを行う方法は [DataContract] および [DataMember]/[IgnoreDataMember] 属性を使用することです。ただし、クライアントのソース コードを変更することはできないため、それは私にとって選択肢ではありません。そのため、型の定義の外で、シリアル化するメンバーを指定する方法を探しています。次のようになります。
これに何か方法はありますか?ありがとう、ベルナベ