EF不会崩溃,但没有数据返回到视图

时间:2014-06-26 12:35:15

标签: c# asp.net-mvc-4

我刚刚开始关注ASP.NET MVC上的Adam Freeman书并建立他的榜样。

这是我到目前为止的代码,它只是我们遍历它们并在视图中显示的产品列表。就是这样。 问题是我对EF很新,并且无法弄清楚为什么它的repo没有返回任何结果,所以我的页面没有显示任何数据。

如果有人可以快速查看并弄清楚发生了什么,我真的很感激。

 public class ProductController : Controller
    {
        private IProductsRepository repository;


        public ProductController(IProductsRepository repo)
        {
            repository = repo;
        }


        public ViewResult List()
        {
            return View(repository.Products);
        }


    }

1 个答案:

答案 0 :(得分:1)

你没有数据。

我下载了你的项目并查看了Products表,但那里什么都没有。

您可以通过添加if语句

来检查
@if (Model.Any()) { 
  foreach (var p in Model)
  {
   <div class ="item">
     <h3>@p.Name</h3>
     @p.Description
     <h4>@p.Price.ToString("c")</h4>
   </div>
  }
 }
 else
 {
   <h1>No Data!</h1>
 }

您可以通过进入&#34;服务器资源管理器窗口&#34;来添加数据。 (如果您没有激活它,您可以进入视图 - &gt;服务器资源管理器)打开Products表。右键单击并转到&#34;显示表格数据&#34;。然后你可以将它添加到该表中

注意: 我没有从github下载vs项目,所以我不确定.mdf是否由于某种原因不起作用,你确实有数据。我已经阅读了同一本书,所以我知道这是一个本地的东西。

如果你刚开始,它不是最好的书。我建议获得&#34;开始ASP MVC 4&#34;通过apress。如果你是所有人的新手,他经历的体育商店的例子变得非常毛茸茸。在后面的章节中他只是真正解释了它的机制。