在这个示例ASP.Net MVC 4程序中,我有一个用户填写有关赛马的详细信息.比赛有一个名字,以及所涉及的马匹列表.每匹马都有一个名字和一个年龄.
表单使用ajax和javascript来允许此人动态添加和删除马输入字段,然后在按下提交按钮时立即提交.
为了让这个过程变得简单,我正在使用Matt Lunn制作的html助手.
public static MvcHtmlString EditorForMany<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, IEnumerable<TValue>>> expression, string htmlFieldName = null) where TModel : class
{
var items = expression.Compile()(html.ViewData.Model);
var sb = new StringBuilder();
if (String.IsNullOrEmpty(htmlFieldName))
{
var prefix = html.ViewContext.ViewData.TemplateInfo.HtmlFieldPrefix;
htmlFieldName = (prefix.Length > 0 ? (prefix + ".") : String.Empty) + ExpressionHelper.GetExpressionText(expression);
}
foreach (var item in items)
{
var dummy = new { Item = item };
var guid = Guid.NewGuid().ToString();
var memberExp …Run Code Online (Sandbox Code Playgroud)