2013-12-22 27 views
-1

如果我有表格Book with column Author |標題......但如果有超過2個標題具有相同的作者我怎麼能顯示列表框中的作者的一個值。抱歉,因爲我不能表現出提前的任何代碼,並感謝如何讓Listbox只顯示一個超過2個相同值的值C#

我有我的裝載功能這樣

public void LoadData() 
    { 

      var orderedAuthor = (from Book b in BookDB.Books 
           orderby b.Author 
            select b); Data.Clear(); 
      foreach (Book m in orderedAuthor) 
       Data.Add(m); 



    } 

幫我解決這個問題的代碼只是爲了展現出獨特的價值

回答

0

您可以使用LINQ

例如:

public bool exists(string author) 
    { 
     bool hasAuthor = this.Data.Any(c => c.Author == author); 
     return hasAuthor; 
    } 

,然後你只需要調用它

foreach (Book m in orderedAuthor) 
{ 
      if(this.exists(m.Author)!=true) 
      Data.Add(m); 
    } 
+0

它適合我。非常感謝 – user3123487

+0

如果我想使它成爲我表中所有列的一般函數......即作者,出版者,流派,....我如何編輯我的代碼? – user3123487

0

這聽起來像你需要鮮明:) http://msdn.microsoft.com/en-us/library/bb348436(v=vs.110).aspx

(from Book b in BookDB.Books 
          orderby b.Author 
           select b.Author).Distinct(); 

此例的方法是無法獲得VS :)

+0

可以ü幫助我上面的代碼? – user3123487

+0

我不明白你的命名:)作者是全名嗎? 如果是這樣我添加了代碼。 – Softwarehuset

+0

sr sr爲我的錯誤。因爲我只是想展示一個簡單的例子...和代碼是不同的....現在它確定 – user3123487

相關問題