2011-07-17 8 views
0

一般的に、UIとは何の関係もないカスタムタイプに関連する変換作業にTypeConverterを使用しない理由はありますか?.net Typeコンバーターとドメインの使用

インプラントより複雑なケースについて考えているイム&明示的な変換。

デザインガイドラインへのリンク&そうするためのサンプルはありますか?パーティーは、1つまたは多くのPartyNamesを持つことができPartyRelationshipパターン -

乾杯、
Berrylここ

UPDATE

は、変換、党の動機です。パーティーがPersonの場合、必要な名前はPersonNameです。

PersonNameにはPartyNameとは異なる属性があり、ValueObjectです。これは、ui/formattingタイプのタスクで使用されますが、PartyNameはエンティティであり、データベースに保持されます。

ので、変換が必要とされています - プレゼンテーションのためのDBからのロード:(PartyName - > PersonNameの) - DBに新しい連絡先を追加します(PersonNameの - > PartyName)

enter image description here

+3

解決策は実際にはコンテキストでしか評価できません。タイプコンバータの使用を検討しているケースの例がありますか? –

+0

あなたもそうです、私はあなたのコメントをupvoteしなければなりませんでした。 @Bryan Wattsの投稿記事 – Berryl

+0

を参照してください。明示的な変換演算子を使用していますが、より明示的にTypeConverterに傾いており、UIカルチャをサポートしています。問題は、実際にTypeConvertersをうまく使用する方法がわからないことです。乾杯。 – Berryl

答えて

1

はここですgood linkは、TypeConverterIConvertibleの実装方法の違いを説明しています。しかし、基本的にTypeConverterは、設計時に型変換を行うために構築され、最も便利です。たとえば、XAMLが型をXMLに変換して戻す方法です。

IConvertibleは一般的にTypeConverterよりも柔軟性が高く、高速で(反射を使用しない)、実装が簡単です。 TypeConverter(標準値のリストのような)の追加機能が必要な場合を除き、インターフェイスオプションを使用して、Convert静的メソッドを使用することをお勧めします。

+0

は、IConvertableに行くことはできません。ネットタイプtho?私はこのシナリオではカスタムタイプのみを扱っています。 – Berryl

関連する問題