2

またはへの参照がないドメインプロジェクトでPOCO エンティティをコーディングしています。2 番目のプロジェクトDataAccessには、エンティティのデータ コンテキストと流れるような構成が含まれています。EntityFrameworkDataAnnotations

一部のエンティティ プロパティはIsRequiredまたはHasMaxLengthです。ドメインを使用する開発者は、Xml のコメント付きドキュメントがないと、何が必要なのか、またはプロパティの最大長があるかどうかわかりません。そのため、要件を伝えるためにプロパティにドキュメントを追加しました。

ただし、問題は、要件が変更された場合、コメントを更新する必要があることです。これは、Domain と DataAccess の 2 つのライブラリを更新していることを意味します。

ドメインで DataAnnotations を参照することに不安を感じていました。私のプロパティには属性がありません。これらの属性により、ドメイン エンティティにアクセスできる開発者は、何が必要か、またはプロパティに最大長があるかどうかを知ることができます。

エンティティで DataAnnotations を使用したり、エンティティの Xml コメントを更新したりせずに、プロパティのプロパティ要件を伝える別の方法はありますか?

DataAnnotationまたは、 Domain プロジェクトへの参照を追加することについて、不必要に頭がおかしいのでしょうか?

4

1 に答える 1

1

注釈を付けずに、EntityFramework.dll への参照を含めずに、POCO エンティティをそのままにしておくことをお勧めします。ポータブル dll の作成とモデルの再利用がより簡単になります。つまり、それが必要になった場合です。

しかし、あなたが言ったように、「自動文書化」モデルを持つことが難しくなります。DbContext からモデル ダイアグラムを生成してみることができます。そのための強力なツールがあります。おそらく、ドキュメントのニーズには十分でしょう。200 を超えるエンティティを持つモデルで試してみたところ、問題なく動作しました。ダイアグラムの生成には cca 2 分かかりましたが、その後は問題なく機能し、「ドキュメント」の目的に役立ちました。

于 2013-05-13T14:34:14.387 に答える