このenumプロパティまたはフィールド(Domain、DTO、ViewModel)を持つ多層アーキテクチャとクラスがある場合は、どこでenumを定義する必要がありますか? POCOクラスの内部または外部で、すべてのレイヤーでこのコードを繰り返す必要がありますか?Automapperとenumプロパティ
-1
A
答えて
0
間違いやバグの見つけにくいコードを繰り返すことは絶対に避けてください。私の推奨は、他のアプリケーションレイヤーでも依存関係を追加することなく使用できるように、一般的に参照されるDLLアセンブリにそのようなものを配置することです。
0
個人的に私は別々のファイルで定義します。たとえば、 "Bla.cs"に定義されているenum "Bla"を持つ場合、そのenumを使用するコードは "using"ディレクティブを使用します。しかし、それはどのような列挙型にアクセスできる場所を定義するので、名前空間で、完全に任意である:
- 名前空間「アプリケーション」で定義する場合は、
Application.Bla
によって、あるいは単に「のBla」でアクセスするときと同じで名前空間 - あなたがパブリックとして定義あなたが
Aclass.Bla
2
でアクセスすることができます限り、「AClassは」という名前のクラス内で定義した場合、我々は、ドメイン、DTO、ViewModelに...階層化アーキテクチャを使用すると、ときに我々レイヤー間で使用する必要のある列挙型を定義するには、DTOレイヤーでのみ定義します。これは、定義上、DTOレイヤーがすべてのレイヤーにアクセス可能であるためです。私たちは、読みやすくするために、クラスの外部でこのような共有列挙型を作成する標準を使用します(つまり、EnumName.EnumValueとClassName.EnumName.EnumValue)。しかし、それは好みの問題です。
関連する問題
- 1. Automapper flag enum
- 2. Automapper CreateMissingTypeMapsプロパティ警告
- 3. Enum HWNDプロパティC++
- 4. AutoMapperプロパティ名の変換
- 5. 目的C - enumのゲッターとセッターのプロパティ
- 6. Silverlight - Enumプロパティへのバインド
- 7. nullable enumの遅延プロパティ
- 8. ネストされたデスティネーションのあるAutomapperプロパティ
- 9. AutoMapperプロパティ名に基づく条件
- 10. AutoMapper:手作業で設定したプロパティ
- 11. AutoMapperマッピングに追加のプロパティを渡す
- 12. Automapper v5アップグレード後の空のプロパティ値
- 13. プロパティがインターフェイスタイプの場合、AutoMapperはnullプロパティをマップしようとしますか?
- 14. Automapperはプロパティを埋め込むことができません
- 15. メソッドの "Enum"と "enum"パラメータ
- 16. Enum型のプロパティを持つWPFユーザーコントロール
- 17. AnnotationにEnumのStringプロパティを使用
- 18. Obj-Cのプロパティにenum値を代入
- 19. enumクラスのプロパティでフィルタリングするKotlin
- 20. EFとAutomapper
- 21. LINQとAutoMapper
- 22. AutoMapperマッピングインターフェイスと列
- 23. QMLのC++クラスのプロパティ型としてenum型
- 24. Automapper ForAllPropertyMapsはAutoMapper内
- 25. WCF PerSessionサービスとAutoMapper
- 26. AutoMapper 4.2とNinject 3.2
- 27. AutoMapperのプロファイルとユニットテスト
- 28. AutomapperとEFのナビゲーションプロパティ
- 29. enumクラスとenumクラスの違いは?
- 30. Automapper
DRY原則?) – Dmitry