如何正确设计应包含双语信息的类
|
如果我的域对象应包含2种语言的字符串属性,我应该创建2个单独的属性还是创建新的BiLingualString类型?
例如,在植物分类应用程序中,植物域对象可以包含Plant.LatName和Plant.EngName。
整个域的双语属性数量并不大,大约为6-8,我只需要支持两种语言,信息应该同时以两种语言呈现给UI。 (因此这不是本地化)。需求在开发过程中不会改变。
它看起来像是一个简单的问题,但是这个决定将对验证,持久性,对象克隆和许多其他事情产生影响。
我可以想到使用新的dualString类型的缺点:
验证:如果我要使用DataAnattations,Enterprise Library验证块,Flued验证,这将需要更多的工作,对象图验证比简单的属性验证更难。
持久性:NH或EF醚将需要更多具有复杂特性的工作。
OOP:更复杂的对象初始化,在使用它之前,我将必须在构造函数中初始化此新Type。
体系结构:转换对象以在层之间传递对象比较困难,自动映射工具将需要更多的手工工作。
没有找到相关结果
已邀请:
3 个回复
戊袱
赐黄
,但是当我阅读
时,我认为使用属性是有意义的。 在这种情况下,我会去上一堂课,每种语言都有一个字符串,就像您提到的
然后我会像这样在我的主要Plant类中使用该类
扭湘阀柿蹄