2014-05-02 85 views
0

嘿傢伙我有一個問題,將formCollection值保存到數組。將formCollection值保存到一個數組

所以我有一個由單選按鈕組成的表單,我試圖傳遞給一個動作。

單選按鈕看起來像:

<input id="Likelihood" name="Likelihood" type="radio" value="5" /><br/> 

<input id="Priority" name="Priority" type="radio" value="5" /><br/> 

<input id="Type" name="Type" type="radio" value="7" /><br/> 

這是我的方法採取的形式爲:

public ActionResult TriageScore(TriVM tri, FormCollection formCollection) 
    { 
     int i = 0; 
     string[] value = new string[formCollection.Count]; 
     foreach (var key in formCollection.AllKeys) 
     { 
      value[i] = formCollection[key]; 
     } 
    } 

所以在參數中的FormCollection具有具有3的長度的AllKeys值。內容是[0]可能性,[1]優先級,[2]類型。當我將這些值存儲到數組中時,它僅存儲最後一個單選按鈕(Type)中的7,其餘爲空。

我忘了提及可能性類型和優先級並不總是名稱。這些名字會動態變化,所以我不能簡單地引用name = Likelihood

+1

你需要增加「我」在您的foreach循環。 – attila

回答

2

你需要增加「我」在你的foreach循環,這樣

public ActionResult TriageScore(TriVM tri, FormCollection formCollection) 
     { 
      int i = 0; 
      string[] value = new string[formCollection.Count]; 
      foreach (var key in formCollection.AllKeys) 
      { 
       value[i] = formCollection[key]; 
       i++; 
      } 
     }