C# 数据表。选择在win7和winXP中不同的操作
这段代码在Win7中非常有效, 但在WinXP中会引发以下错误:(无法对System.DateTime和System.String执行“=”操作C# 数据表。选择在win7和winXP中不同的操作,c#,.net,windows-7,windows-xp,C#,.net,Windows 7,Windows Xp,这段代码在Win7中非常有效, 但在WinXP中会引发以下错误:(无法对System.DateTime和System.String执行“=”操作 DataRow[] holrows = HOLIDAY.Select(hol.HOLIDAY.HOLIDAY_DATEColumn.ColumnName + " = ' + CurrDate + "'"); 为了解决这个问题,我使用了String.Format,它可以工作,但我不明白为什么 DataRow[] holrows = HOLIDAY.Se
DataRow[] holrows = HOLIDAY.Select(hol.HOLIDAY.HOLIDAY_DATEColumn.ColumnName + " = ' + CurrDate + "'");
为了解决这个问题,我使用了String.Format,它可以工作,但我不明白为什么
DataRow[] holrows = HOLIDAY.Select(String.Format(hol.HOLIDAY.HOLIDAY_DATEColumn.ColumnName + " = '{0}' , CurrDate));
有人知道原因吗?很可能两台电脑上的.net framework版本不同,而不是操作系统本身。更可能的原因是两台机器上的区域设置不同,导致CurrDate自动转换字符串时的日期格式不同()-ed.在Windows中检查您的区域设置。当我以两种方式打印字符串时,忘了说这一点-结果是相同的