我有dateTime
值start
和finish
日期。我将它与旧值进行比较。如果它存在,我不允许更新。
entity
中的值属性为int
,client
为dateTime
。
Linq
代码是;
public static bool IsWROExist(CRO cROne)
{
Entities entities = new Entities();
int startDate = Convert.ToInt32(cROne.StartDate);
int finishDate = Convert.ToInt32(cROne.FinishDate);
return (from WRO in entities.WRO
where WRO.id != cROne.Id &&
(WRO.startDate == startDate &&
WRO.finishDate == finishDate )
select WRO).Any();
}
我收到此错误:输入字符串的格式不正确。
答案 0 :(得分:1)
您似乎没有使用包含开始日期和结束日期的变量。
以下是您应该拥有的
&& (WRO.startDate == startDate &&
WRO.finishDate == finishDate )
答案 1 :(得分:1)
您已添加&&
两次:
return (from WRO in entities.WRO
where WRO.id != cROne.Id && <-------
------> && (WRO.startDate == startDate &&
WRO.finishDate == finishDate )
select WRO).Any();
答案 2 :(得分:1)
尝试这种方式转换日期时间:
int n = int.Parse(date.ToString("yyyyMMddHHmmss"));
然后与值进行比较。
!!警告:int可能无法完全保存该值。您可能想要使用长数据类型。