如何使用c#.net从基于日期的sql数据库中删除元素
我有这项服务,可以从数据库中删除一(1)行(很抱歉出现任何行话错误): 但是如何更改它以删除与传递的DateTime对象匹配的所有行 我试过:如何使用c#.net从基于日期的sql数据库中删除元素,c#,.net,sql-server,C#,.net,Sql Server,我有这项服务,可以从数据库中删除一(1)行(很抱歉出现任何行话错误): 但是如何更改它以删除与传递的DateTime对象匹配的所有行 我试过: 将其更改为列表,但该bool不起作用 在服务中设置循环,但无法使其正确运行 在函数调用中设置循环,但也无法使其工作 在谷歌上搜索其他帖子,但没有找到匹配项 您不应该使用FirstOrDefault搜索第一个匹配项,而应该将所有有效结果放入一个列表(Where+ToList)并删除所有匹配项(Removate) var result=\u db.Sche
- 将其更改为列表,但该bool不起作用
- 在服务中设置循环,但无法使其正确运行
- 在函数调用中设置循环,但也无法使其工作
- 在谷歌上搜索其他帖子,但没有找到匹配项
FirstOrDefault
搜索第一个匹配项,而应该将所有有效结果放入一个列表(Where
+ToList
)并删除所有匹配项(Removate
)
var result=\u db.Schedules.Where(x=>x.AppointmentDateEnd您应该将所有有效结果放入一个列表(Where
+ToList
)并删除所有结果(RemoveRange
)
var result=\u db.Schedules.Where(x=>x.AppointmentDateEnd将“FirstOrDefault”替换为“Where”。使用RemoveAll()而不是Remove()。将“FirstOrDefault”替换为“Where”。使用RemoveAll()而不是Remove()。
public bool DeleteSchedulesFromDate(DateTime objDateTime)
{
var result = _db.Schedules.FirstOrDefault(x => x.AppointmentDateEnd <= objDateTime);
if (result != null)
{
_db.Schedules.Remove(result);
_db.SaveChanges();
}
else
{
return false;
}
return true;
}
private void DeleteSchedules(string dtEnd)
{
deleteScheduleDate = dtEnd;
DateTime _dtEnd;
if (DateTime.TryParse(dtEnd, out _dtEnd))
{
var result = @Service.DeleteSchedulesFromDate(_dtEnd);
schedules.Clear();
schedules = Service.GetSchedules();
if (result)
{
this.ShouldRender();
}
}
}
var result = _db.Schedules.Where(x => x.AppointmentDateEnd <= objDateTime).ToList();
if (result.Any())
{
_db.Schedules.RemoveRange(result);
_db.SaveChanges();
}