NHibernate/Localization/Lookup表

Sha*_*adi 5 nhibernate

我想为我的域对象添加本地化支持.我有以下内容:

class Person
{
    int Id;
    City city;
}

class City
{
    int Id;
    string Name;
}
Run Code Online (Sandbox Code Playgroud)

所有城市都保存在查找数据库表中Cities.我想拥有:

Person p = PeopleService.GetPersonById(1);
//Assert p.City.Name == 'London' if culture == 'en-us'
Run Code Online (Sandbox Code Playgroud)

我不喜欢这样做

string City::Name { get { return ILocalizationProvider.Get(typeof(City), Id); }
Run Code Online (Sandbox Code Playgroud)

我来到这篇文章:

http://ayende.com/Blog/archive/2006/12/26/LocalizingNHibernateContextualParameters.aspx

但我不知道它是否支持NH 2.1.

如何指示NH在二级缓存中缓存所有城市,以避免每次都使用相同的区域设置进行连接?

在NHibernate中有一种简单而简洁的方法来处理数据库查找表和本地化吗?

Tim*_*gar 3

文章中写道:“请注意,NHibernate 2.1 及更高版本中不再支持此行为。这从一开始就是一种 hack,并且不能保证继续工作。”

所以这在你的场景中不起作用。我推荐这个:http://nhforge.org/wikis/howtonh/localization-techniques.aspx