2011-08-05 9 views
0

国コードまたは社内IDを取得するには、データベースにアクセスするか、プロパティファイルをロードする必要があります。国コードの取得 - サービスまたはユーティリティの方法?

このような方法はどのようにアプリケーションに配置されますか?実用的な方法として、アプリケーションサービスに適合するように見えますか?

答えて

1

DDDでは、このタイプのメソッドは、基本的にデータアクセスレイヤの抽象化であるrepositoryに配置されます。国コードのようなものは、静的なデータなのでキャッシュすることを検討することができます。

1

私の経験では、国は内部IDを持っていません。 (あなたのドメインは異なるかもしれません)したがって、それがあなたのドメインに存在せず、あなたがドメイン主導の設計をしているなら、国idのような人工的な概念を避けたいでしょう。

データベースにAddressというテーブルがあるとします。 CountryIdを保存する代わりに、代わりにCountryAbbreviationを保存してください。これは自然なキーです。

あなたの住所に有効なcountry_idのみが含まれていることを確認するにはどうすればよいですか?あなたはすべてのクライアント(例えば)の制御にいるなら、あなたはこのような何か:上記

<select> 
    <option value="US">United States</option 
    <option value="UK">United Kingdom</option 
</select> 

を、あなたはvalue属性は、国の略語であることがわかります。

レポートが国別の略語に基づいていない限り、あなたのドメインにとって非常に重要な場合を除いて、それらが非常に一貫性があることを確認する必要はありません。

関連する問題