MVC是否可以使用Mustache或Handlebars模拟Lambda表达式?

时间:2014-05-22 00:56:27

标签: asp.net-mvc-4 templates lambda templating

我有一个模板构建器,可以从模板创建节和问题集,然后保存到数据库。我有明确地将视图链接到模型的问题,因为部分和问题编号是动态的,并且没有设定的金额:

<div class="form-group">
        @Html.LabelFor(model => model.S{{section}}Name, new { @class = "control-label col-md-2" })
        <div class="col-md-10">
            @Html.EditorFor(model => model.S{{section}}Name)
            @Html.ValidationMessageFor(model => model.S{{section}}Name)
        </div>
</div>

如果不使用模板,上面的内容将如下所示:

<div class="form-group">
        @Html.LabelFor(model => model.S1Name, new { @class = "control-label col-md-2" })
        <div class="col-md-10">
            @Html.EditorFor(model => model.S1Name)
            @Html.ValidationMessageFor(model => model.S1Name)
        </div>
    </div>

我正在尝试使用模板所需的方法

动态分配这些
  

{{}}

当像这样使用时,MVC不喜欢这样。我在同一页面上的任何其他地方插入数据没有其他问题。有没有解决的办法?

任何想法或帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

您无法使用表达式以您希望的方式设计模板。我建议使用MVC更固有地使用的数组方法,其中每个项目都是模型中的数组,而不是模型属性名称中的数字。