2016-08-17 103 views
0

這是我的代碼如何使用C#動態地基於列表創建變量?

Public List<string> Values{get;set;} 

在上面的列表中包含多個值。例如[「10」,「20」,「30」]。我想用c#.net中的列表值(a =「10」,b =「20」,c =「30」)創建三個變量。如果列表計數爲零不需要創建變量。

+2

你需要考慮你的設計。爲什麼你需要爲每個值創建變量(只是好奇)? –

+0

這與MVC有什麼關係?最重要的是......如果沒有上下文,變量在這裏沒有多少意義。我們是在談論JS變量還是將私有成員添加到方法內的類或局部變量? – Leo

+0

是的,我也認爲相同@HariPrasad .. –

回答

0

我希望這會幫助你。

if (Values.Count != 0){ 
    Dictionary<string, string> dictionary = 
      new Dictionary<string, string>(); 
    char key = 'a'; 
    for (i = 0; i < Values.Count; i++){ 
     dictionary.Add(key, Values[i]); 
     key = (key == 'z'? 'a': (char)(input + 1)); 
    } 
} 
1

您可以嘗試使用ExpandoObject

using System.Dynamic; 

    ... 

    List<string> Values = new List<string>() { 
    "10", "20", "30" 
    }; 

    ... 

    dynamic variables = new ExpandoObject(); 

    for (int i = 0; i < Values.Count; ++i) 
    (variables as IDictionary<String, Object>).Add(
     ((char) ('a' + i)).ToString(), 
     Values[i]); 

    ... 

    // 10 
    Console.Write(variables.a);