C# 按日期时间范围筛选MVC 5

C# 按日期时间范围筛选MVC 5,c#,asp.net-mvc,entity-framework,razor,asp.net-mvc-5,C#,Asp.net Mvc,Entity Framework,Razor,Asp.net Mvc 5,各位晚上好,, 我回到家,任何人都可以帮助我在视图部分使用日期时间范围过滤器。 这是我的模型: public class IndexVM { public DateTime? StartDate { get; set; } public DateTime? EndDate { get; set; } public virtual ICollection<Order> Orders { get; set; } } 公共类IndexVM { 公共日期时间?开始

各位晚上好,, 我回到家,任何人都可以帮助我在视图部分使用日期时间范围过滤器。 这是我的模型:

public class IndexVM
{
    public DateTime? StartDate { get; set; }
    public DateTime? EndDate { get; set; }
    public virtual ICollection<Order> Orders { get; set; }

}
公共类IndexVM
{
公共日期时间?开始日期{get;set;}
公共日期时间?结束日期{get;set;}
公共虚拟ICollection订单{get;set;}
}
我正在使用视图模型进行显示,下面是我的控制器:

public ActionResult Index(DateTime? start, DateTime? end)
    {

        var orders = db.Orders
            .Where(x => x.OrderStatus == 3
            && x.ClosedAt > start
            && x.ClosedAt < end)
            .OrderByDescending(x => x.LastUpdateAt)
            .ToList();

        IndexVM model = new IndexVM();
        model.StartDate = start;
        model.EndDate = end;
        model.Orders = orders;
        return View(model);
    }
公共操作结果索引(DateTime?开始,DateTime?结束) { var orders=db.orders .其中(x=>x.OrderStatus==3 &&x.ClosedAt>开始 &&x.ClosedAt<结束) .OrderByDescending(x=>x.LastUpdateAt) .ToList(); IndexVM模型=新的IndexVM(); model.StartDate=开始; model.EndDate=结束; 模型.订单=订单; 返回视图(模型); } 现在我的观点有些问题

这是我的问题: 如何将开始和结束日期传递给控制器以获取具有定义属性的订单? 这是我的观点,我做错了什么

@using (Html.BeginForm())
{
    <div class="form-horizontal">
        <div class="form-group form-group-sm">
            <div class="col-md-8">
                @Html.TextBoxFor(model => model.StartDate, "{0:MM/dd/yyyy}", new { @class = "date-picker form-control", @id = "start", @placeholder = "Start Date" })
            </div>
        </div>
        <div class="form-group form-group-sm">
            <div class="col-md-8">
                @Html.TextBoxFor(model => model.EndDate, "{0:MM/dd/yyyy}", new { @class = "date-picker form-control", @id = "end", @placeholder = "End Date" })
            </div>
        </div>
        <div class="form-group-sm">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Save" class="btn btn-default" /> <span> </span>
            </div>
        </div>
    </div>
}
@使用(Html.BeginForm())
{
@Html.TextBoxFor(model=>model.StartDate,“{0:MM/dd/yyyy}”,新的{@class=“日期选择器表单控件”,@id=“开始”,@placeholder=“开始日期”})
@Html.TextBoxFor(model=>model.EndDate,“{0:MM/dd/yyyy}”、新的{@class=“日期选择器表单控件”、@id=“end”、@placeholder=“end date”})
}
控制器

public ActionResult Index(DateTime? start, DateTime? end)
    {
  ViewBag.start = start;
            ViewBag.end = end;
        var orders = db.Orders
            .Where(x => x.OrderStatus == 3
            && x.ClosedAt > start
            && x.ClosedAt < end)
            .OrderByDescending(x => x.LastUpdateAt)
            .ToList();


        return View(orders);
    }
公共操作结果索引(DateTime?开始,DateTime?结束) { ViewBag.start=开始; ViewBag.end=结束; var orders=db.orders .其中(x=>x.OrderStatus==3 &&x.ClosedAt>开始 &&x.ClosedAt<结束) .OrderByDescending(x=>x.LastUpdateAt) .ToList(); 返回视图(订单); } 看法

@使用(Html.BeginForm())
{
@TextBox(“start”,null,new{@class=“form control datepicker”})
@TextBox(“end”,null,new{@class=“form control datepicker”})
}

这对我不起作用。它只提供了两个文本输入框。你能用完整的解决方案更新吗?
@using (Html.BeginForm())
{
    <div class="form-horizontal">
        <div class="form-group form-group-sm">
            <div class="col-md-8">
               @Html.TextBox("start", null, new { @class = "form-control datepicker" }) 
            </div>
        </div>
        <div class="form-group form-group-sm">
            <div class="col-md-8">
               @Html.TextBox("end", null, new { @class = "form-control datepicker" })
            </div>
        </div>
        <div class="form-group-sm">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Save" class="btn btn-default" /> <span> </span>
            </div>
        </div>
    </div>
}