我正在尝试从数据库中输出所有数据,并且foreach语句中有错误

迪奥戈·特谢拉(Diogo Teixeira)

我正在尝试从数据库中输出所有数据,但是我的foreach语句出现此错误,我无法解决2天

控制器文件:

 public ActionResult Index()
    {
        PAPEntities db = new PAPEntities();
        MoviesData[] movies = db.MoviesData.ToArray();

        movies.Select(movie => new MovieViewModels
        {
            MovieID = movie.MovieID,
            MovieName = movie.MovieName,
            MovieDescription = movie.MovieDescription,
            MoviePrice = movie.MoviePrice,
            MovieCategory = movie.MovieCategory,
            MovieYear = movie.MovieYear
        });


        return View(movies);
    }

风景:

 <table class="table table-bordered table-responsive table-hover">
    <tr>
        <th><b>Movie Name </b></th>
        <th><b>Movie Category </b></th>
        <th><b>Movie Year </b></th>
        <th><b>Movie Price</b></th>

    </tr>
    @foreach (var item in Model)
    {
        <tr>
            <td>@item.MovieName</td>
            <td>@item.MovieCategory</td>
            <td>@item.MovieYear
            <td>@item.MoviePrice</td>
        </tr>
    }
</table>

该模型是具有6个属性的简单类校准的MovieViewModel

foreach语句无法对类型为“ MovieViewModels”的变量进行操作,因为“ MovieViewModels”不包含“ GetEnumerator”的公共实例定义

马克·格雷韦尔

这里有几点:

  1. 您没有捕捉到结果 Select
  2. 大概您的视图没有正确的模型定义

对于1,请注意,您应该缓冲之前进行投影-如果LINQ可以在投影中绕过对象,则没有必要创建对象的实际实例MoviesData,因此:

(注意:我拥有重命名MovieViewModels的自由MovieViewModel

MovieViewModel[] movies = db.MoviesData.Select(movie => new MovieViewModel
{
    MovieID = movie.MovieID,
    MovieName = movie.MovieName,
    MovieDescription = movie.MovieDescription,
    MoviePrice = movie.MoviePrice,
    MovieCategory = movie.MovieCategory,
    MovieYear = movie.MovieYear
}).ToArray();

return View(movies);

(这也意味着SQL可能只限于您感兴趣的列,以避免获取不必要的列)

然后,在视图中,您应该具有:

@model MovieViewModel[]

告诉剃刀用于的类型Model

这样:事情应该起作用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

没有错误,没有输出,并且没有将数据插入到jsp的数据库中

带有数据库连接的 foreach 永远冻结,没有错误

我正在尝试将数据库中的所有列打印到水平表

如何检查所有数据(如果没有错误),然后使用Laravel更新到数据库

我想从MySQL数据库中检索去年的记录,但它正在从数据库中检索所有数据

我正在尝试使用不同的输入从我的数据库中搜索数据并保持所有会话

JDBC PreparedStatement.executeBatch不会更新数据库中的值,并且没有错误

如何显示MySQL中的所有数据库以及foreach数据库显示所有表

Python Flask-Restful错误:API中的Delete方法正在删除所有数据库条目

尝试使用反射将所有数据从数据库表显示到Jtable中

格式化并输出数据库表中的所有数据

为什么数据库中的数据没有被更新但是对象却被更新并且没有错误?

如何查看数据库中的所有数据?

显示数据库中的所有数据行

Django:Paginator从数据库返回所有数据,并且排序不起作用

我正在尝试将 Twilio 广播短信功能添加到我的 Django 应用程序中,但无法弄清楚如何检索所有数据库电话号码

拦截Java中的所有数据库调用

如何删除CockroachDB中的所有数据库?

列出所有数据库中的表

我正在尝试使用ajax自动更新mysql数据库并且没有单击按钮

我有数据库BUR错误:SQL(查询)错误或丢失的数据库

我是否应该对Java中的所有数据库插入都使用PreparedStatements?

如何使用js从我的数据库中获取所有数组值

Mysql中没有数据库选择错误

我想从 Reaitime 数据库中获取整个分支的元素,并将接收到的所有数据输出到 RecyclerView

单个SELECT语句中有两个数据库

我正在使用Slugalicious宝石。如何为数据库中的现有数据创建块?

我正在尝试通过使用PHP的查询来更新数据,但数据库中的数据没有变化

我的PDO插入没有错误...但是没有插入到我的数据库中