我有以下lamba查询,似乎总是返回所有记录,即使在int?status pamameter不为null且有效.任何人都知道为什么Enum过滤器不被尊重?谢谢阅读!
public ActionResult GetArrivals(int facilityId, int? status)
{
var registrationList = db.Registrations
.Where(f => f.Facility.Id == facilityId)
.Where(a => a.ArrivalDateTime >= DateTime.Today)
.OrderBy(ln => ln.User.LastName)
.OrderBy(fn => fn.User.FirstName);
if (status.HasValue)
{
UrgentCareWaitWeb.Models.RegistrationStatus statusValue;
if (Enum.TryParse(status.Value.ToString(), out statusValue) == true)
{
registrationList
.Where(s => s.Status == statusValue);
}
}
// Project query to view
var pview = registrationList.Select(r => new PatientRegistrationsView()
{
ArrivalId = r.Id,
UserId = r.User.UserId,
UserName = r.User.UserName,
FirstName = r.User.FirstName,
LastName = r.User.LastName,
PrimaryPhone = r.User.PrimaryPhone, …Run Code Online (Sandbox Code Playgroud)