我正在一個網站上有一個包含多個部分視圖的佈局。這些部分視圖具有連接到它們的數據庫的模型。我可以單獨顯示部分視圖,但不能在同一個佈局上顯示。我使用了代碼優先的方法,所以我有一個實體模型,它包含我所有的模型。數據庫已生成並連接。我有表格中的數據,我目前在管理部分顯示這些信息以進行編輯和刪除等。我不知道我做錯了什麼。 這裏是我的佈局部分呼叫:一個視圖中的多個模型
<li>@Html.Partial("_SubCategory")</li>
我的控制器是一個列表 - 目前在auditScheduleController:
public ActionResult _SubCategory()
{
return View(_db.SubCategories.ToList());
}
在我的部分觀點我已經把一些senarios和非似乎工作。如果我把 @model IEnumerable<QQAudit.Models.Subcategory>
我可以自己顯示頁面,並獲得子類別列表。如果我通過佈局打開它,它會出錯。說着有關
「傳遞到字典的模型產品類型‘System.Data.Entity.DynamicProxies.AuditSchedule_5218AAD34020C54DC3FF0CFD6169988BB5FED2C296ABF80AC3EFFF93441CE91B’,但這部詞典需要類型‘QQAForm.Models.SubCategory’的典範項目。
我已經看過不同的論壇和發現了一些東西,但我的一切都試過,就是在那裏,似乎以某種方式失敗。
有趣的是我的背景是Zend的PHP,我可以做我正努力完成那裏,但不能複製吃在MVC3 C#中。
2012年8月1日
我在點是我想要添加的頁面鏈接的ID我已經改變了在Global.asax是:
routes.MapRoute(
"AuditSecion", // Route name
"{controller}/{action}/{id}/{section}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional, section = UrlParameter.Optional }, // Parameter defaults
new[] { "QQAForm.Controllers" }
);
我想要的鏈接來填充頁面所在的ID。所以部分看起來是這樣的:
@{ Layout = null; }
@model IEnumerable<QQAForm.Models.SubCategory>
@foreach (var item in Model)
{
@Html.ActionLink(item.SubcategoryName, "audit", new { id = item.SubCategoryID }, null)
}
subcategoryID應該是部分和ID應該是頁面的ID,看起來像這樣。
http://localhost:52490/AuditSchedule/Audit/1192
在理論上子菜單的鏈接應該是
http://localhost:52490/AuditShedule/Audit/1192/1
感謝您的幫助!
好了,這是一個稍微複雜的問題的頂部。我的觀點有5個方面。標題,側面菜單部分,頂部區域部分,底部區域是內容主體。我現在擁有它的時候,在審計列表中,視圖用頂部局部填充選定的記錄。無論網頁上做了什麼,我都希望它留在那裏。側面菜單是從一個子類別表中填充的,我想在佈局的底部或正文中顯示一個表單。現在,字符串是記錄ID,如果我有一個鏈接菜單來改變每個問題的形式(這也是在一張表中,這將改變和我的審計記錄。 –