2017-01-03 17 views
1

配列でタスクを作成しています。 下記てくださいを参照してください。既存のタスクに新しいタスクを追加する方法

Task<int>[] tasks = new Task<int>[] 
{ 
clientT1.UpdateCatalogBulkArticlePrices(catalogCode, data.prices), 
clientT1.UpdateCatalogArticleSizesBulk(catalogCode, data.sizes) 
}; 

私の質問は、私のtasksオブジェクトに新しいタスクを追加する方法です。 何かのように:

tasks.add(...); 
+0

配列の代わりに 'List 'を使用することをお勧めします。 – juharr

答えて

2
List<Task<int>> tasks = new List<Task<int>> 
{ 
clientT1.UpdateCatalogBulkArticlePrices(catalogCode, data.prices), 
clientT1.UpdateCatalogArticleSizesBulk(catalogCode, data.sizes) 
}; 

tasks.Add(...) 
2

あなたはC#で配列の構造体を使用しています。定義上、配列のサイズは固定で固定されています。新しい要素を追加することはできません。この目的のためにArrayList/Listのようなものを使う必要があります。

List<Task<int>> tasks = new List<Task<int>>(); 
tasks.Add(clientT1.UpdateCatalogBulkArticlePrices(catalogCode, data.prices); 
tasks.Add(clientT1.UpdateCatalogArticleSizesBulk(catalogCode, data.sizes)) 

tasks.Add(anotherTask); 
1

あなたは、タスクの一覧作成する必要があります。その後、

var tasks = new List<Task<int>>(); 

をそして:

tasks.Add(AnotherTask); 
1

配列は、固定された建設中サイズにしています〜するあなたは配列を返す必要があり、addメソッドを使いたいなら、このようなものを試すことができます。

 var t = new List<Task<int>>(); 
    t.Add(clientT1.UpdateCatalogBulkArticlePrices(catalogCode, data.prices)); 
    t.Add(clientT1.UpdateCatalogArticleSizesBulk(catalogCode, data.sizes)); 
    Task<int>[] tasks = t.ToArray(); 
関連する問題