我正在使用动态 linq 为我的 MVC 应用程序提供数据,但我在使用 DateTime 字段时遇到了问题。
我正在解析的对象有一个 System.Datetime 字段,我想检查日期是否对应。
所以我尝试像这样构建字符串(我正在解析动态字典以获取数据):
string dateToParse = keyValuePair.Value;
DateTime objDate = DateTime.Parse(dateToParse);
valuesToUse.Add("OBJ_DATE.Date == " + objDate.ToShortDateString());
当我加载数据时,我会这样做:
var objQry = from pl in m_Db.OBJS.Where(whereConditions)
select pl;
该whereConditions
变量是我在拥有所有数据时构建的字符串。
但是当数据到达 datetime 字段时,应用程序会因以下语句而崩溃:
Operator '==' incompatible with operand types 'DateTime' and 'Int32'
如何使用动态 Linq 检查 DateTime 字段?我尝试了很多选项,比如将 objDate 不带 ToShortDateString,但效果相同。
编辑:
例如“OBJ_DATE.Date == 2012.01.01”