2012-10-13 46 views
3
List<Customer> c= new List<Customer>() 
{ 
    new Customer{Id = 1, Name = "Bruce"}, 
    new Customer{Id = 2, Name = "John"} 
}; 

我只知道如何使這樣一個數組

c.ForEach(o => str += o.Id.ToString() + ","); 

,使之簡單任何方式?

我只是想獲得標識出來,讓IDS陣列int[] Ids = new {Id = 1, Id = 2}

+0

@NikhilAgrawal這不是新到C#4. – Adam

+0

@NikhilAgrawal這[一直可能](http://msdn.microsoft.com/en-us/library/system.string.concat(v = vs.71).aspx)因爲' String.Concat'方法,'+'編譯時支持'(string,object)'重載。 – Adam

+0

無需將Id轉換爲與另一個字符串連接的字符串。你可以寫o.Id +「,」它不會給出錯誤。 –

回答

9

如果你想創建與所有這些ID的數組,那麼你可以使用SelectToArray方法:

int[] ids = c.Select(i => i.Id).ToArray(); 
+0

嘿請幫助我..同樣的問題,我已經面臨我用Viewbag顯示數組像這樣'var visitorsData = @ Html.Raw(Json.Encode(ViewBag.arrayVistiors));'但我想得到像'var visitorData = {US:200,IN:123}'就像這樣..請幫助如何解決這個問題。 @Zbigniew – 2017-11-01 07:38:36

+0

@Brij很難說不知道你的數據結構,但它看起來像你想擁有某種字典。嘗試使用「ToDictionary」,例如'arrayVisitors.ToDictionary(key => key.CountryCode,value => value.VisitorsCount)' – Zbigniew

+0

@Brij另一方面你也可以這樣做:'arrayVisitors.Select(i => new {i.CountryCode,i .VisitorsCount})' – Zbigniew