0

我想过滤性别。我调用了这个过滤器的所有函数。但它不值得。我想知道性别过滤器的确切调用函数是什么。在一个页面中,有 2 个选项。一种是男性和女性。如果单击 Male 它仅过滤 Male 的。但是在这里,如果我单击男性意味着它会显示男性和女性等成员的总数。

我在存储库中的代码

  public IQueryable<Candidate> GetCandidates(string what,string location, string gender)
       {  
        int Gender;
        bool genderSpecified = int.TryParse(gender, out Gender);

          (string.IsNullOrEmpty(gender)||
          ((candidate.Gender.HasValue))) &&
           orderby candidate.createddate ascending
           select candidate);
            }

//在控制器中

          IQueryable<Candidate> candidates = _repository.GetCandidates(what, where,  gender);
        ViewData["Filters"] = filters;
        return GetPaginatedCandidates(page, candidates);

这是我的代码。但它没有正确过滤。

4

1 回答 1

0

让我们做一些假设,直到问题被更新并从那里开始......使用 EntityFramework、名为“Candidate”的实体、名为“Candiates”的 DbSet 和名为“DataContext”的 EntityFramework 数据上下文定义。

public IQueryable<Candidate> GetCandiates(string what, string location, string gender)
{
   return from item in DataContext.Candidates
       where (item.Gender.HasValue && item.Gender == int.parse(gender))
                           || (!item.Gender.HasValue)
       order by item.createddate ascending
       select item;
}

这应该给你一个想法。我没有在 Visual Studio 中启动它,但要检查它是否有效,因为需要设置太多的基础。希望能帮助到你。

于 2012-09-11T12:10:41.280 回答