我从SQL服务器获取一些数据,并尝试在前端C#窗体上显示。
dtpMcAccExp.Text = DateTime.FromOADate(Convert.ToDouble(reply.Rows [0] [ “ExpiryDate”]))AddDays(2)的ToString( “DD / MM / YYYY”);
这里,dtpMcAccExp是一个DatTimePicker& 回复是一个数据表,我得到sql查询回复。
因为我获得了ExpiryDate一个OLE日期,以及2天前一个日期(作为delphi系统用来更新它),所以必须添加2天来引入实际日期。
休息所有你能理解的。
问题是...... 在某些计算机上,系统日期时间设置短日期是“dd / MM / yyyy”,它工作正常,但在一些短日期为“M / d / yyyy”的计算机中,它会出错 “字符串未被识别为有效日期时间..”
因此解决方案是将每个客户端计算机的短日期更改为“dd / MM / yyyy”,我希望我的应用程序能够运行。
或其他一些解决方案,即我可以改变我的编码。 请帮助。 非常感谢..
答案 0 :(得分:1)
为此,您只需设置系统当前文化即可运行...
using System.Threading;
using System.Globalization;
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US", false);
点数: 你也可以将文化设置为dd / MM / yyy的“en-GB”,但是存储到数据库MM / dd / yyy的数据可能是标准日期格式,并且不会有任何麻烦....