2011-02-18 48 views
0

我呈現在人們列表視圖和一個複選框這樣的:的mvc列表modelbinding

<% for (int i = 0; i < Model.ElevSelectedList.Count; i++) {%> 
    <tr> 
    <td> 
     <%=Html.CheckBoxFor(x => x.ElevSelectedList[i].Valgt, new { @class="elevSelect" }) %> 
     <%=Html.HiddenFor(x => x.ElevSelectedList[i].ElevId) %> 
     <%=Html.DisplayTextFor(x => x.ElevSelectedList[i].ElevCpr) %> 
     <%=Html.HiddenFor(x => x.ElevSelectedList[i].ElevCpr) %> 
    </td> 
    <td> 
     <%=Html.DisplayTextFor(x => x.ElevSelectedList[i].ElevKuvertNavn)%> 
     <%=Html.HiddenFor(x => x.ElevSelectedList[i].ElevKuvertNavn)%> 
    </td> 
    </tr> 
<% } %> 

這在輸出中正確輸入字段,如:

    <tr> 
         <td> 
          <input checked="checked" class="elevSelect" id="ElevSelectedList_0__Valgt" name="ElevSelectedList[0].Valgt" type="checkbox" value="true" /><input name="ElevSelectedList[0].Valgt" type="hidden" value="false" /> 
          <input id="ElevSelectedList_0__ElevId" name="ElevSelectedList[0].ElevId" type="hidden" value="112849" /> 
          1003950000 
          <input id="ElevSelectedList_0__ElevCpr" name="ElevSelectedList[0].ElevCpr" type="hidden" value="1003950000" /> 
         </td> 
         <td> 
          Anders Lind Kirkely 
          <input id="ElevSelectedList_0__ElevKuvertNavn" name="ElevSelectedList[0].ElevKuvertNavn" type="hidden" value="Anders Lind Kirkely" /> 

         </td> 
        </tr> 

所有這是在開發中,當我部署到本地IIS,但是當它被部署到生產時,html輸出看起來像這樣:

     <tr> 
         <td> 
          <input checked="checked" class="elevSelect" id="Valgt" name="Valgt" type="checkbox" value="true" /><input name="Valgt" type="hidden" value="false" /> 
          <input id="ElevId" name="ElevId" type="hidden" value="112849" /> 
          1003950000 
          <input id="ElevCpr" name="ElevCpr" type="hidden" value="1003950000" /> 
         </td> 
         <td> 
          Anders Lind Kirkely 
          <input id="ElevKuvertNavn" name="ElevKuvertNavn" type="hidden" value="Anders Lind Kirkely" /> 
         </td> 
        </tr> 

這裏的html輸出的名稱是不同的,這使得模型綁定失敗,沒有任何錯誤,在開發和本地IIS我們正在運行IIS 7.5,但生產是IIS 7,網站是運行在一個集成的應用程序池的MVC2。

有沒有人把這個問題困住了,並有一個解決方案?

回答

0

我們從未遇到類似這樣的事情。但是,始終建議在兩種環境下都保持相同的版本設置。嘗試將生產IIS服務器更改爲7.5

+0

我同意你的意見,但這不是當時的選項。 – Thomas 2011-02-18 09:58:08