我想为我的域对象添加本地化支持。我有以下内容:
class Person
{
int Id;
City city;
}
class City
{
int Id;
string Name;
}
所有城市都保存在查找数据库表Cities
中。我想:
Person p = PeopleService.GetPersonById(1);
//Assert p.City.Name == 'London' if culture == 'en-us'
我不喜欢做
string City::Name { get { return ILocalizationProvider.Get(typeof(City), Id); }
我来到这篇文章:
http://ayende.com/Blog/archive/2006/12/26/LocalizingNHibernateContextualParameters.aspx
但我不知道它是否支持NH 2.1。
如何指示NH在二级缓存中缓存所有城市,以避免每次都使用相同的区域设置进行连接?
在NHibernate中处理数据库查找表和本地化是否有一种简单明了的方法?
答案 0 :(得分:3)
在文章中它说“请注意,NHibernate 2.1及更高版本中不再支持这种行为。开始时这是一个黑客攻击,并且不能保证继续工作。”
所以这在你的场景中不起作用。我建议这样做:http://nhforge.org/wikis/howtonh/localization-techniques.aspx