mar*_*k s 4 asp.net-mvc asp.net-mvc-3
在MVC 3视图中,我想显示单个合同和声明列表,用户将能够创建新的声明.我为Contract和Claims创建了一个不同的视图,我如何合并它们,以便只有一个视图.
达林,
当视图查找两个字符串时,如何传递MyViewModel的实例?
public ActionResult Details(int id)
{
MyViewModel myView = new MyViewModel ();
return View(_repository.GetContract(id), myView);
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我使用的是PartialViews Html,但我没有看到如何将模型作为参数传递.
合同视图@model Portal.Models.Contracts @using Portal.Models
显示数据.
<div>
@{
Html.RenderPartial("_Claim", Portal.Models.Contracts);
}
</div>
Run Code Online (Sandbox Code Playgroud)
我收到错误CS0119:'Models.Contracts'是'type',在给定的上下文中无效.
数据绑定到此处的合同视图
public ActionResult Details(int id)
{
return View(_repository.GetContract(id);
}
Run Code Online (Sandbox Code Playgroud)
如何将数据绑定到PartialView _Claim哪个类型IEnumerable<Models.Claims>?
您可以定义一个视图模型来包装这两个模型:
public class MyViewModel
{
public Contract Contract { get; set; }
public Claim[] Claims { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后让您的控制器操作将MyViewModel的实例传递给视图,并在此视图中使用显示模板:
@model MyViewModel
@Html.DisplayFor(x => x.Contract)
@Html.DisplayFor(x => x.Claims)
Run Code Online (Sandbox Code Playgroud)
然后定义Contract和Claim模型(~/Views/Shared/DisplayTemplates/Contract.cshtml和~/Views/Shared/DisplayTemplates/Claim.cshtml)的显示模板.
| 归档时间: |
|
| 查看次数: |
6178 次 |
| 最近记录: |