如何将json数据传递给视图

时间:2012-08-07 10:39:51

标签: c# asp.net-mvc-3

如果我想传递json数组以查看自动完成目的怎么办?

ViewBug足够好吗?

最好的办法是什么?

另一个问题。

我的页面分为几个部分。一组部分是静态内容(它不可编辑,类似于span标签),我通过viewmodel传递给它。其他组是动态内容(输入,选择等)。

因此,对于此类型页面,我们使用以下ViewModel:

public class ViewModel
{
     public ViewModelPart1 Part1 {get; set;}
     public ViewModelPart2 Part2 {get; set;}
     public ViewModelPart3 Part3 {get; set;}
}

在View中我们有以下代码:

@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模式的食谱。

0 个答案:

没有答案