2010-07-13 23 views
5

मुझे त्रुटि संदेश है: मैं यह नहीं समझ सकता कि क्या गलत है। कृपया क्या कोई मेरी मदद कर सकता है। धन्यवाद।स्टैक ट्रेस त्रुटि

स्टैक ट्रेस: ​​

[NotSupportedException:। संग्रह केवल पढ़ने के लिए है]
System.SZArrayHelper.Clear() +56
System.Web.Mvc.CollectionHelpers.ReplaceCollectionImpl (आईसीओलेक्शन`1 संग्रह, आईनेमेरेबल न्यूकंट्स) +125

निष्पादन चरण (IExecutionStep चरण, बूलियन & completedSynchronously) +184

मेरे कोड है: मॉडल:

namespace TestArrays.Models 
{ 
    public class Person 
    { 
     public CategoriesRow[] Categories { get; set; } 
     public Person() 
     { 

      Categories = new CategoriesRow[1]; 
      Categories[0] = new CategoriesRow(); 
      Categories[0].Name = "Bug"; 
      Categories[0].ID = "0"; 
     } 
    } 

    public class CategoriesRow 
    { 
     public String Name { get; set; } 
     public String ID { get; set; } 
    } 

} 

नियंत्रक

public ActionResult Create() 
    { 
     return View(new Person()); 
    } 

    // 
    // POST: /Person/Create 

    [HttpPost] 
    public ActionResult Create(Person person) 
    { 
     try 
     { 
      // TODO: Add insert logic here 

      return RedirectToAction("Index"); 
     } 
     catch 
     { 
      return View(); 
     } 
    } 

दृश्य

<form id="Form" action="<%=Url.Action("Create",new{Action="Create"}) %>" method="post" enctype="multipart/form-data"> 
    <div id="categoriessection" > 
      <h3>Categories</h3> 
      <ul class= "list" id="categoryList"> 
      <%if (Model.Categories!=null) {%> 
      <%int count = 0; %> 
       <%foreach (var category in Model.Categories) 
       {%> 
       <%if (!String.IsNullOrEmpty(category.Name))     
        {%> 
        <li><input type="hidden" name="Categories.Index" value="<%=count%>" /> 
         <input type="text" value="<%=category.Name%>" name="Categories[<%=count%>].Name" style="width:280px"/> 
         <input type="hidden" value="<%=category.ID%>" name="Categories[<%=count++%>].ID" style="width:280px"/> 
         <input type="button" value = "Delete"/> 
        </li> 
        <%} 
        %> 
       <%} %> 
      <%} %>    
       <li> <input type="hidden" name="Categories.Index" value="value0" /> 
       <input type="text" value="" name="Categories[value0].Name" style="width:280px"/> 
        <input type="hidden" value="" name="Categories[value0].ID" style="width:280px"/> 
        <input type="button" value= "Add" /> 
       </li> 
      </ul> 
     </div> 

     <div> 
     <input type ="submit" value="Save" id="save" /> 
     </div> 
     </form> 
+0

मुझे लगता है समस्या क्या <% foreach (Model.Categories में वर श्रेणी) '' से दिया जाता है से संबंधित है। अधिक सटीक, 'मॉडल। श्रेणियां' भाग, जिसके लिए आपका कोड स्निपेट परिभाषा नहीं दिखाता है। शायद स्पष्ट करें? –

उत्तर

5

मैं आमतौर पर मॉडल में वैक्टर के बजाय सूचियों का उपयोग:

public List<CategoriesRow> Categories { get; set; } 
संबंधित मुद्दे