私たちは、C#で記述され、NHibernateを使用してオブジェクトをデータベースにマッピングしている病院情報システムに取り組んでいます。MVCパターンは、ビジネスロジックをUIから分離するために使用されています。ここに問題があります、
可変サイズの異なる文字列のセットをUIにどのように取得しますか?
たとえば、Contact
オブジェクトには、City
どの都市の連絡先が存在するかを保持するという名前のプロパティがあります。アプリが作成されている国には、80を超える都市があります。これらの都市をコンボボックスにどのように書き込むことができますか?(またはデータグリッド、テーブルなど)この例では、都市番号は固定されています。長い間、別の都市を追加する必要はありません。(都市リストが変更された場合、再コンパイルは問題になりません)
たとえば、Contact
オブジェクトにはFooBar
1000の異なる文字列値を保持するという名前の別のプロパティがあり、これらの値はそのプロパティのコンボボックスから選択されます。また、このセットは、ユーザーが必要に応じて拡張できます。これらの値をコンボボックスにどのようにロードしますか?(文字列リストがコンボボックスオブジェクトに静的に書き込まれる場合、再コンパイルは問題になります)
私は以下のようにさまざまな解決策を持っています
- コードまたはデザイナーのコンボボックスに静的に書き込まれるすべての文字列値
- リソースファイルから値を取得します
- これらの値をXMLファイルに書き込みます(実際には上記と同じですが、再コンパイルする必要はありません)
City
オブジェクトを作成し、NHibernateを使用してテーブルからリストに値を取得しCITY
ます- andプロパティ
StringHolder
を持つという名前のクラスを作成します。すべての文字列値(およびを含む)は、。という名前の1つのテーブルにのみ書き込まれます。そして、NHibernateで「CITY」や「FOOBAR」などのキーを使用してこれらの値を取得します。Type
Value
City
FooBar
STRINGHOLDER
どちらを選びますか?それとも私に別のものを提案してもらえますか?
皆さんありがとう