0

「ツール」というクラスがあります。ツールには、名前、説明、その他の特定のプロパティがあります。名前などは読み取り専用ですが、説明はユーザーが変更できるため、ツールは特別です。

ツールの数は一定であり、開発時に認識されます。クエリを実行し、説明を更新できる場所をユーザーに示す必要があるため、これは値オブジェクトではありません。つまり、一種のエンティティですが、ユーザーは新しいツールを作成できません。

私はこのようなツールを取る可能性を探しています:

Tool.SomeGreatTool

ここで、SomeGreatTool は「Some great tool」という名前のツールであり、説明はユーザーが指定したものと同じである必要があります。

Jimmy Bogard はほぼ完璧なソリューションを持っていますが、NHibernate は SomeGreatTool について何でも知っており、Description は null になります。

ジミーのソリューションを変更する方法、または別の方法で行う方法は? データベースから SomeGreatTool をインスタンス化するには?

4

1 に答える 1

1

この種の半定数データは、いまだによく知られているエンティティの一種として扱っています。ツール タイプの値オブジェクト/列挙型クラスを作成しますが、ツール タイプをツールから分離します。ToolRepository.Find(ToolType.Screwdriver) などを実行するには、永続ストアに移動する必要があります。ツール タイプごとにツールが 1 つしかない場合でも、これら 2 つの概念は分離します。

于 2010-02-17T17:24:51.913 に答える