是否可以在一個視圖中放置2個模型?我的頁面是工作的罰款有一個模型,但是當我嘗試添加其他模型線以下我的代碼決定開始有一些錯誤:在1視圖中有2個模型的方法,可以嗎?
@model ProjectShop.Models.Delivery
我的代碼之前,我添加上面一行的作品顯示如下:
@model ProjectShop.Models.Products
@{
ViewBag.Title = "Products";
Layout = "~/Views/Shared/_ProductLayout.cshtml";
}
<p>@Html.DisplayFor(model => model.productname) </p>
在一個視圖中有兩個模型使我可以從兩個來源調用數據的方法是什麼?
編輯:
這是一類新的將作爲HTML頁面視圖模型,但我認爲它不是正確的在所有:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using ProjectShop.Models;
namespace ProjectShop.ViewModels
{
public class ProductDelivTimes
{
public Models.Products;
public Models.Delivery;
}
}
編輯:
public class ProductDelivTimes
{
public Models.Products ProductModel;
public Models.Delivery DeliveryModel;
}
在我的HTML文件中:
@model IEnumerable<ProjectShop.ViewModels.ProductDelivTimes>
編輯:
@model IEnumerable<ProjectShop.ViewModels.PerformanceTimes>
@{
Layout = "~/Views/Shared/_Layout.cshtml";
var grid = new WebGrid(Model, rowsPerPage: 5, defaultSort: "Name");
ViewBag.Created = TempData["ProductCreated"];
ViewBag.Created = TempData["ProductDeleted"];
}
@grid.GetHtml(
tableStyle: "grid",
headerStyle: "gridhead",
rowStyle: "gridRow",
alternatingRowStyle: "gridRow",
mode: WebGridPagerModes.All,
columns: grid.Columns(
grid.Column("Image", format: @<text><img src="@item.image" alt="" width="84px" height="128px"/></text>, style: "Image"),
grid.Column("Products", format: @<text>@Html.Raw(item.Products.name.Substring(0, item.Products.name.IndexOf(".") + 1))</text>, style: "Products")
))
數據將始終需要,其他所需的模型將顯示頁面上每個產品的交付日期。 – Blob 2012-03-27 15:25:43
是的,所以只需將它們組合成一個「包裝」模型,知道如何組合來自兩種不同模型的數據以供顯示。 – Attila 2012-03-27 15:33:54