EF 4 に関する記事を読んでいるときに、EF が特定のオブジェクト (EntitySet、Navigation が EntityCollection を指しているなど) を複数形にし、他のオブジェクトには単数形を使用していることを読みました。好奇心から - どうやってこれを行うのですか? 組み込みの辞書を使用していますか?
ありがとう、
スコット
EF 4 に関する記事を読んでいるときに、EF が特定のオブジェクト (EntitySet、Navigation が EntityCollection を指しているなど) を複数形にし、他のオブジェクトには単数形を使用していることを読みました。好奇心から - どうやってこれを行うのですか? 組み込みの辞書を使用していますか?
ありがとう、
スコット
Microsoft はPluralizationService
、他の目的にも使用できる基本抽象クラスを .NET フレームワークに追加しました。
public abstract class PluralizationService
{
public static PluralizationService CreateService(CultureInfo culture);
public abstract string Pluralize(string word);
public abstract string Singularize(string word);
}
EF Pluralizationについて詳しく説明している素晴らしいブログ記事を参照してください。マイクロソフトは、さまざまな言語/文化でそのサービスのいくつかの具体的な実装を提供していますが、独自のものを作成するのは完全に自由です。
EF4 が提供する複数形化サービスがどのように機能するのかは、私にはよくわかりませんが、おそらく、特定の言語規則の組み合わせと、さまざまな方法で処理するための多数の例外です。それらは、リソースとして、または関連するアセンブリ内に他の方法で保存される可能性が最も高いです。