c#datatable new column表达式datetime

时间:2015-02-02 21:43:09

标签: c# datatable expression

我试图在数据表中连接两个不同的日期时间字段

问题是,我想连接几年,而不是整个日期时间字符串。

用于连接整个字符串:

newColumn = new DataColumn("concatDate");

newColumn.Expression = "Convert(StartDate, 'System.String') 
                     + Convert(EndDate , 'System.String')";

任何建议都会感激!!

欢呼声

1 个答案:

答案 0 :(得分:1)

不幸的是,Expression属性识别的语法中不支持YEAR方法。但是,您可以使用非常不优雅的子串来实现您的结果。

像这样的东西

newColumn.Expression = @"Substring(Convert(StartDate, 'System.String'), 7, 4) 
                       + Substring(Convert(EndDate, 'System.String'), 7, 4)"

用于子字符串的确切值取决于您的语言环境以及在字符串中转换日期时应用的规则。因此,您应该尝试使用7和4来调整数据库设置