如果我想传递 json 数组来查看自动完成的目的怎么办?
ViewBug 够好吗?
最好的方法是什么?
还有一个问题。
我的页面分为几个部分。一组部分是静态内容(它不可编辑,类似于 span 标签),我通过 viewmodel 传递给查看。其他组是动态内容(输入、选择等)。
所以对于这种类型的页面,我们使用以下 ViewModel:
public class ViewModel
{
public ViewModelPart1 Part1 {get; set;}
public ViewModelPart2 Part2 {get; set;}
public ViewModelPart3 Part3 {get; set;}
}
在视图中我们有以下代码:
@using (Html.BeginForm())
{
<span>@model.Part1.Age</span>
<span>@model.Part1.Name</span>
.....
<div>
@Html.TextBoxFor(x => x.Part3.CountryName)<br />
@Html.ValidationMessageFor(x => x..Part3.CountryId)
</div>
<button id="SaveButton" type="submit">Save</button>
}
因此,当用户按下保存按钮时,我们将返回我们的视图模型,除了包含在<span>
标签中的所有字段。当然这不好,因为验证失败后我们无法恢复我们的页面。为了解决这个问题,我们可以使用隐藏字段<span>@model.Part1.Age</span> @Html.HiddenFor(x => x.Part1.Age)
。不幸的是,它使 HTML 代码变脏了,我认为这不是一个好习惯。那么怎么做才对呢?这个问题也有很多变化(传递数据部分视图,当我们动态添加新数据时保存状态等等)。我希望找到可以帮助我学习基本 asp.net mvc 模式的食谱。