oimotis - 2007-11-6 12:09:00
公司有一个项目要用到论坛,我google了N天,决定选择DiscuzNT.
下载了cow258版主的1.1的繁体版来试用(此版后台没有繁体化,后来我花时间又把它繁体化了)
先是dnt.config文件和window下的temp目录的问题,烦到我差点想撞墙.解决后.在本机测试OK,传到主机上后,发现N个错误,太多了,不好说...错误多是这样:
將字元字串轉換成 smalldatetime 資料類型時,轉換失敗。"
或:
將字元字串轉換成 datetime 資料類型時,轉換失敗。
没办法,只好下载1.1版的源码,修正了一二个,发现问题都是出自DateTime.ToString();经过测试发现,在简体中文版的.net framework下,默认DateTime.ToString()返回: "2007-11-6 11:28:05".繁体下返回: "2007/11/6 上午 11:29:27".后来公司说用PHP版的.PHP版的的确好用,稳定,功能强大.但是,由于要整合asp的用户登录和客户后来又说要进行二次开发..所以,又重回asp.net版.没办法,谁叫俺不懂PHP..
考虑了N久,我决定将1.1版升级为2.0,最后以失败告终!
没办法了,只好将2.0版繁体化了!!当我把2.0版繁体化完毕后,在本机测试一切OK.传到主机上,又出现N个以下错误:
將字元字串轉換成 smalldatetime 資料類型時,轉換失敗。"
或:
將字元字串轉換成 datetime 資料類型時,轉換失敗。
在此请问雪人和cow258版主,有没有更简便的方法,将繁体版的.net framework的DateTime.ToString()的格式变为"2007-11-6 11:28:05".因为如果硬改的话,会出现隐患.而且后台也有很多地方用到了:Calender.SelectedDate.ToString().
十万火急,望高手和达人门指点!!
感恩!!
Mororo - 2007-11-10 19:18:00
簡略看過NT的源碼,找不到問題在那,感覺問題是在win的地區及語言選項,
你比較一下中文(PRG),中文(台灣)就知道了,不竟ASPX整合了WIN.
(迷之聲:你一向直覺不好)
Utils.cs 729行 //返回标准日期格式string
oimotis - 2007-11-12 14:05:00
挂在这几天了,只老兄一个回复,感谢!
前二天看没有人回复,所以用老方办解决了.方法如下:
1.查找 SelectedDate.ToString(),并替换为:SelectedDate.ToString("yyyy-MM-dd HH:mm:ss")
2.在UI中测试,发现错误后,查找该页的 ToString();是DateTime的都替换为:ToString("yyyy-MM-dd HH:mm:ss"),这项工作最费时,但是没办法..
不知道如果Discuz出繁体版的话会不会这样做..