2012-09-06 45 views
0

我想過濾性別。我打電話給這個過濾器的所有功能。但它不值得。我想知道什麼是性別過濾器的確切呼叫功能。在一個頁面中,有2個選項。一個是男性和女性。如果點擊男性,它只會過濾男性的唯一身份。但在這裏,如果我點擊男性意味着它顯示像男性和女性的總成員。如何在mvc中過濾性別

我在庫

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); 

這是我的代碼。但它沒有正確過濾。

+3

你用'mvc'標記了你的問題,但是我看不出它與[model-view-controller]有什麼關係(https://en.wikipedia.org/wiki/Model%E2%80%93view% E2%80%93控制器)模式。你能否修改你的標籤? –

+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中解決這個問題,以檢查它的工作原理,因爲需要設置太多的基礎。希望能幫助到你。