在 ASP.NET MVC 视图中创建列表时出错

Posted

技术标签:

【中文标题】在 ASP.NET MVC 视图中创建列表时出错【英文标题】:Getting error during create list in ASP.NET MVC View 【发布时间】:2014-10-18 10:49:30 【问题描述】:

我正在尝试使用数据库优先方法从数据库中获取数据,并希望在列表中显示数据。我正在为此尝试以下代码

这是我的动作方法

 public ActionResult transaction()
        

            var result = from T in db.tbProcTransactions
                         select T.pServiceID;
            return View(result);
        

在我看来,我写了这个

@model IEnumerable<LinQuery.Models.tbProcTransaction>

@
    ViewBag.Title = "transaction";


<h2>transaction</h2>

@foreach (var serviceID in @Model.pServiceID)

    @serviceID;

但是当我运行这段代码时,我得到了这个错误

System.Collections.Generic.IEnumerable' 不包含“pServiceID”的定义和扩展方法 'pServiceID' 接受类型的第一个参数 'System.Collections.Generic.IEnumerable' 可以找到(您是否缺少 using 指令或程序集 参考?)

我无法解决此错误请专家解决此错误

【问题讨论】:

这可能是blogs.msdn.com/b/webdev/archive/2014/10/16/… 吗? 您返回的是IEnumerable&lt;typeof(pServiceID)&gt;。最简单的解决方案是使用select T; 而不是select T.pServiceID; 【参考方案1】:

将您的 foreach 语句更改为

@foreach (var serviceID in Model)

  @serviceID;

【讨论】:

【参考方案2】:

在操作中选择 T 而不是 T。pServiceID

【讨论】:

【参考方案3】:

试试这个:

@model IEnumerable<LinQuery.Models.tbProcTransaction>

@
    ViewBag.Title = "transaction";


<h2>transaction</h2>

@foreach (var serviceID in Model)

    serviceID.pServiceID;

【讨论】:

以上是关于在 ASP.NET MVC 视图中创建列表时出错的主要内容,如果未能解决你的问题,请参考以下文章

在 ASP.Net MVC 中的同一视图中分离两个表单

ASP.net MVC - 如何在各种视图中保留模型

Asp.Net MVC 从模型创建视图脚手架不生成 int 属性

asp.net MVC列表视图中未显示图像

控制器中的 Asp.Net MVC 5 ModelState 具有索引、添加、编辑

ASP.NET MVC 页面验证失败(值无效。)