小编Rya*_*ill的帖子

由Enum进行Lambda查询过滤

我有以下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)

linq asp.net-mvc lambda

0
推荐指数
1
解决办法
964
查看次数

标签 统计

asp.net-mvc ×1

lambda ×1

linq ×1