我正在形成如下所示的字符串表達式。像使用動態lambda表達式搜索日期時間字段
string Condition = " it.person_id = " + personId.ToString();
if (lstPersonFields != null)
{
foreach (var field in lstPersonFields)
{
string fieldCondition = " And it." + field.FieldName.ToString();
if (field.FieldCondition == "Contains")
{
fieldCondition = fieldCondition + " Like '%" + field.FieldValue.ToString() + "%'";
}
else if (field.FieldCondition == "Equals")
{
fieldCondition = fieldCondition + " = '" + field.FieldValue.ToString()+"'";
}
Condition = Condition + fieldCondition;
}
}
var personSearch = FullPersonlst.Where(Condition).ToList();
上面的代碼像搜索正常工作超過datetime值等,並引發錯誤的日期時間字段,如
Like arguments must be of string type
如何做到像搜索日期時間字段?
你嘗試轉換成日期時間字符串..? – 2013-02-08 11:25:30
我不認爲這是可能的,因爲我們沒有字段名稱。 – 2013-02-08 11:27:58
請勿混淆輸入。重複:不要連接輸入。這是非常非常非常危險的代碼... – 2013-02-08 11:30:36