【发布时间】:2013-01-12 10:57:23
【问题描述】:
您好,我收到此错误: 传入字典的模型项的类型为“System.Collections.Generic.List`1[DBModel.Telemarketing]”,但此字典需要“TWeb.Models.LoginModel”类型的模型项
在 _Layout.cshtml 文件中我有
@Html.Partial("_LoginPartial")
此部分登录视图在 _layout 页面上的 div 中呈现(它使用 javaScripts 隐藏/显示)
@model TWeb.Models.LoginModel
然后我有“电话营销”控制器有视图:
public class TelemarketingController : Controller
{
private Entities db = new Entities();
//
// GET: /Telemarketing/
public ActionResult Index()
{
return View(db.Telemarketings.ToList());
}
当我点击 _Layout 页面中的链接时
@Html.ActionLink("Telemarketingas", "Index", "Telemarketing", new{area="" },new{ })
它抛出一个写在帖子顶部的错误。
我是 MVC 的新手,请帮助我。
【问题讨论】:
-
如果你的局部视图需要一个模型,你必须通过它然后你调用
@Html.Partial("_LoginPartial", model) -
问题是他从_layout调用部分。他应该将其设为 @Html.Action("_LoginPartial") 以便它可以生成模型
-
您需要在视图中使用 @model IEnumerable
才能使用它 -
致“戴夫 A”。当我尝试使用操作时,我收到错误:堆栈不足以继续安全地执行程序。这可能是由于调用堆栈上有太多函数或堆栈上的函数使用了太多堆栈空间。
-
好的,请展开。您使用了哪种方法?如果它是一个动作部分,你是否为它创建了一个控制器动作并实例化并传回一个值?请添加您的新代码(控制器操作并查看您的答案,以便我看到它)
标签: asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-5