二十四画生的Blog


        ——开始学习Orchard框架
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

[DNN中的Bug]在时区编辑器中存在的一个Bug

Posted on 2005-05-20 20:44  二十四画生  阅读(2009)  评论(0编辑  收藏  举报
  时区编辑器控件(admin\Localization\TimeZoneEditor.ascx)中有这样一个功能,它可以检查存储时区信息的本地化XML文件(App_GlobalResources\TimeZones.zh-CN.xml)与默认的存储时区信息的XML文件(App_GlobalResources\TimeZones.xml)的差别。在本地化文件缺少相应的条目时会要求增加,有多余条目时会自动删除。(条目是否相同用key值来标识,下面的XML中有key值的含义)

如果我将本地化文件增加一个key相同的条目,如:
<root>
  
<!--
    name="时区名"
    key="相对GMT(格林尼治标准时间)的偏移量"
  
-->
  
<!-- 有一条重复key的值 -->
  
<timezone name="(GMT) 格林威治标准时 : 都柏林、爱丁堡、伦敦" key="0" />
  
<timezone name="(GMT) 格林威治标准时 : 都柏林、爱丁堡、伦敦" key="0" />
  
<timezone name="(UTC -12:00) 国际日期变更线" key="-720" />
  
<timezone name="(UTC -11:00) 中途岛、萨摩亚群岛" key="-660" />
  
<timezone name="(UTC -10:00) 夏威夷" key="-600" />
  
<!-- 其余省略 -->
</root>


那么将会产生,无论怎样都会提示缺少条目且无法删除多余条目,如下图:


  解决方法:在读取本地化文件到数据集后,定义时区信息表key为主键。如果定义不成功(有重复的key),则提示出错,然后进行相应的错误处理即可。

  这个时区编辑器中存在的Bug如果不用挑剔的眼光去看它的话,也许它还算不上Bug。算是对DNN精益求精的要求吧!

更多相关内容>>