C# MVC2C中的HtmlTextBoxFor循环#

C# MVC2C中的HtmlTextBoxFor循环#,c#,asp.net-mvc-2,loops,textbox,C#,Asp.net Mvc 2,Loops,Textbox,我正在尝试做一些我认为相对简单但无法实现的事情,这对于一些指针来说是非常有用的 我有一个表格,里面有一列文本框。。。比如说,我想找出“你最喜欢的海盗”,让你在页面上列出所有十个海盗,并对他们为什么是你最喜欢的给出评论 因此,我认为: for (int i =1; i <11; i++) {%> <%=Html.TextBoxFor(x => x.Pirate + i, new { size = 30, maxlength = 200 })%>

我正在尝试做一些我认为相对简单但无法实现的事情,这对于一些指针来说是非常有用的

我有一个表格,里面有一列文本框。。。比如说,我想找出“你最喜欢的海盗”,让你在页面上列出所有十个海盗,并对他们为什么是你最喜欢的给出评论

因此,我认为:

for (int i =1; i <11; i++)         
{%>
    <%=Html.TextBoxFor(x => x.Pirate + i, new { size = 30, maxlength = 200 })%>
    <%=Html.TextAreaFor(x => x.PirateReason + i, new { cols = 42, rows = 2 })%>
    <%
}%> 
但那太可怕了,如果我想知道你最喜欢的100名海盗怎么办

我想在模型中存储海盗,这样我就可以在数据库中弹出他们,或者通过电子邮件发送他们

非常感谢您的建议。

型号:

public class Pirate
{
    public int Id { get; set; }
    public string PirateReason { get; set; }
}
控制器操作:

public ActionResult Index()
{
    var model = Enumerable
        .Range(1, 11)
        .Select(i => new Pirate { 
            Id = i, 
            PirateReason = string.Format("reason {0}", i) 
        });
    return View(model);
}
强类型视图到
IEnumerable


具体点。您希望在模型中设置什么?更新最受欢迎的海盗名单?抱歉,我扩展了原来的问题..看起来这可能会奏效。。。我现在不在测试它,但会回来;-)
public ActionResult Index()
{
    var model = Enumerable
        .Range(1, 11)
        .Select(i => new Pirate { 
            Id = i, 
            PirateReason = string.Format("reason {0}", i) 
        });
    return View(model);
}
<%= Html.EditorForModel() %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<SomeNs.Pirate>" %>
<%= Html.TextBoxFor(x => x.Id, new { size = 30, maxlength = 200 }) %>
<%= Html.TextAreaFor(x => x.PirateReason, new { cols = 42, rows = 2 }) %>