asp.net-mvc - 如何使用 Asp.Net MVC 框架创建主从 View

标签 asp.net-mvc

在过去的几周里,我一直在为我们的企业应用程序评估 Asp.Net MVC 框架。我想要实现的一件事是主从 View 。因为很明显没有 View 状态和回发。现在,例如,我正在使用 Northwind 数据库中的 Products、Customers、Orders 和 Order Details 表,并使用 Asp.Net MVC 创建一个 Master - Details View 。基本上我不想为订单和订单详细信息有单独的 View (换句话说,页面)。该 View 应由订单和订单详细信息组成。我应该如何设计我的 Controller 和 View 来实现这个功能。

感谢和问候,
布哈努丁酥油瓦拉

最佳答案

您可能想要编写一个特定于域的 View 模型类,它将来自单个 Order 及其 OrderDetails 的所有数据组合起来(我假设 Order->OrderDetails 上存在 1->N 关系,不熟悉 Northwind):

public class OrderViewModel
{
  public Order Order {get;set;}
  public IEnumerable<OrderDetail> OrderDetails{get;set;}
}

创建一个绑定(bind)到此类型的 View 模板,在同一页面上呈现订单和订单详细信息。

在您的 Controller 类中,编写一个操作方法,该方法将填充 OrderViewModel 类的单个实例并将其传递给 View 模板。

关于asp.net-mvc - 如何使用 Asp.Net MVC 框架创建主从 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1042465/

相关文章:

c# - 如何在 ASP.NET MVC 项目中生成用于 knockout 的客户端 View 模型?

c# - 有没有比在 mvc razor View 中使用 if 语句显示带有角色的 html 代码更好的方法

asp.net-mvc - 对于 MVC RenderPartial,Cassini 比 IIS 慢得多

c# - 使用三元运算符的字符串连接

.net - 缺少部分声明

asp.net-mvc - 如果(ModelState.IsValid==false)返回View();或 View (模型);?

c# - 如何获取当前登录用户的详细信息?

asp.net-mvc - Razor View 引擎: An expression tree may not contain a dynamic operation

asp.net-mvc - ModelState.IsValid 还是 Model.IsValid?

c# - MVC 3 : DropDownList on an Edit Form for an object that is a property of a ViewModel