2013-11-15 36 views
1

得到一個精緻的名單上有定義爲類DataGroups如下:使用LINQ

public DataGroups(String uniqueId, String title, String subtitle, String imagePath, String description) 

在我的Windows 8應用的我的C#代碼,我使用此代碼加載的XAML頁面

protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState) 
     { 

      var DataGroups = DataSource.GetGroups((String)navigationParameter); 
      this.DefaultViewModel["DGroups"] = DataGroups; 
     } 

GetGroups定義如下

private ObservableCollection<DataGroups> _allGroups = new ObservableCollection<DataGroups>(); 
     public ObservableCollection<DataGroups> AllGroups 
     { 
      get { return this._allGroups; } 
     } 
    public static IEnumerable<DataGroups> GetGroups(string uniqueId) 
     { 
      if (!uniqueId.Equals("AllGroups")) throw new ArgumentException("Only 'AllGroups' is supported as a collection of groups"); 

      return _DataSource.AllGroups; 
     } 

這將返回數據羣的完整列表。

我該如何優化一個函數,以獲得只有特定Title的數據組列表才能顯示在XAML頁面上,使用Linq?

返回Title與定義值相匹配的數據組列表。

回答

1
public List<DataGroups> GetDataGroupsByName(string name) { 
    return _allGroups.Where(x => x.Title == name); 
} 
+0

這會進入'GetGroups'嗎? – Tester

+0

@Tester:我編輯了我的帖子。我注意到你有時使用'SectorGroups',而沒有解釋'SectorGroups'和'DataGroups'之間的連接。 –

+0

對不起,上面所有應該是'DataGroups' – Tester