Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用c#.net从基于日期的sql数据库中删除元素_C#_.net_Sql Server - Fatal编程技术网

如何使用c#.net从基于日期的sql数据库中删除元素

如何使用c#.net从基于日期的sql数据库中删除元素,c#,.net,sql-server,C#,.net,Sql Server,我有这项服务,可以从数据库中删除一(1)行(很抱歉出现任何行话错误): 但是如何更改它以删除与传递的DateTime对象匹配的所有行 我试过: 将其更改为列表,但该bool不起作用 在服务中设置循环,但无法使其正确运行 在函数调用中设置循环,但也无法使其工作 在谷歌上搜索其他帖子,但没有找到匹配项 您不应该使用FirstOrDefault搜索第一个匹配项,而应该将所有有效结果放入一个列表(Where+ToList)并删除所有匹配项(Removate) var result=\u db.Sche

我有这项服务,可以从数据库中删除一(1)行(很抱歉出现任何行话错误):

但是如何更改它以删除与传递的DateTime对象匹配的所有行

我试过:

  • 将其更改为列表,但该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();
}