2011-03-29 76 views
1

我試圖通過將其轉換到一個列表轉換數組列出和添加值

Dim oItemSubmit As InventoryService.InventoryItemSubmit 

Dim oAttInfo As New InventoryService.AttributeInfo 
oAttInfo.Name = "FeatName" 
oAttInfo.Value = "value" 
oItemSubmit.AttributeList.ToList().Add(oAttInfo) 

的AttributeList是AttributeInfo數組的值添加到一個數組。但代碼似乎不起作用。任何想法

感謝 Jothish

回答

4

AttributeList.ToList()正在進行一個副本,並且要插入的副本,而不是原始數組

您可以使用Concat添加元素或序列

C#示例

oItemSubmit.AttributeList = oItemSubmit.AttributeList.Concat(new []{oAttInfo}).ToArray(); 
+0

沒有其他補充。^_^ – Eilistraee 2011-03-29 12:28:59

0
oItemSubmit.AttributeList.ToList().Add(oAttInfo) 

正在將該元素添加到臨時列表已創建,然後未使用

你需要存儲的參考,然後添加到它:

Dim myList as List<MyType> 
myList = oItemSubmit.AttributeList.ToList() 
myList.Add(oAttInfo) 
+0

感謝Aliostad。我正在考慮一些班輪來做代碼。 – JoR 2011-03-29 12:31:56

0

oItemSubmit.AttributeList.ToList()調用創建List(Of AttributeInfo)類的一個全新的實例,該實例無關比其他原始數組,它包含項目從中。向它添加項目不會將項目添加到所述數組。

0

試試這個,

oItemSubmit.AttributeList = theNewList.ToArray