在阅读关于EF 4的文章时,我读到EF将某些对象(EntitySet,导航指向EntityCollection等)复数化,同时将单数形式用于其他对象。出于好奇 - 它是如何做到的?它是否使用内置字典?
谢谢,
斯科特
答案 0 :(得分:2)
Microsoft在.NET框架中添加了一个PluralizationService
基础抽象类 - 它也可以用于其他目的!
public abstract class PluralizationService
{
public static PluralizationService CreateService(CultureInfo culture);
public abstract string Pluralize(string word);
public abstract string Singularize(string word);
}
查看EF Pluralization上的精彩博文,详细解释了它。 Microsoft在各种语言/文化中提供了该服务的一些具体实现,但您可以完全自由地推出自己的服务。
我不知道EF4如何提供多元化服务的工作 - 但很可能它是某些语言规则的组合,以及处理不同的过多例外情况。这些很可能存储为资源或以其他方式存储在相关程序集中。