Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# EF不会崩溃,但没有数据返回到视图_C#_Asp.net Mvc 4 - Fatal编程技术网

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

C# EF不会崩溃,但没有数据返回到视图,c#,asp.net-mvc-4,C#,Asp.net Mvc 4,我刚开始关注Adam Freeman关于ASP.NET MVC的书,并构建他的示例 这是我到目前为止的代码,它只是一个产品列表,我们在其中循环并在视图中显示。就这样。 问题是我对EF非常陌生,不明白为什么它的回购没有返回结果,所以我的页面没有显示任何数据 我真的很感激如果有人能快速看一眼,弄清楚到底发生了什么 public class ProductController : Controller { private IProductsRepository reposit

我刚开始关注Adam Freeman关于
ASP.NET MVC
的书,并构建他的示例

这是我到目前为止的代码,它只是一个产品列表,我们在其中循环并在视图中显示。就这样。 问题是我对EF非常陌生,不明白为什么它的回购没有返回结果,所以我的页面没有显示任何数据

我真的很感激如果有人能快速看一眼,弄清楚到底发生了什么

 public class ProductController : Controller
    {
        private IProductsRepository repository;


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


        public ViewResult List()
        {
            return View(repository.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>
 }
@if(Model.Any()){
foreach(模型中的var p)
{
@p、 名字
@p、 描述
@p、 价格。ToString(“c”)
}
}
其他的
{
没有数据!
}
您可以通过进入“服务器资源管理器窗口”(如果未激活该窗口,则可以进入“视图->服务器资源管理器”)来添加数据,该窗口打开到Products表。右键单击并转到“显示表格数据”。然后你可以把它添加到那个表中

注意: 我还没有从github下载vs项目,因此我不确定.mdf是否因某种原因无法工作,并且您确实有数据。虽然我看过同一本书,但我知道这是一个localDb的东西


如果你刚开始的话,这不是最好的书。我建议通过apress获得“开始ASP MVC 4”。他所经历的体育用品商店的例子,如果你对它都不熟悉的话,就会让人毛骨悚然。他只是在后面的章节中真正解释了它的机理。

你是不是在一张纸上检索了更多的数据,比如20000个数据request@DhavalPatel哦,不,这是本书中一个简单的一步一步的例子,我只输入了7行数据,你能不能发布一些代码而不是给出全部solution@mason我有点同意,但是,如果问题包括一些代码,然后是一个链接,比如github,该怎么办呢。在某些情况下,它可能非常有用cases@gerdi我将再次声明:问题必须在问题本身中提供再现问题所需的最少代码量。如果您想提供这些信息,再加上完整源代码的链接,那么这是可以接受的。但是外部链接经常会下降,这对下一个偶然发现这个问题并试图找到解决方案(堆栈溢出的整个要点)的人没有帮助。非常感谢。是的,它是本地数据库,在我的机器中,如果我说在那个表上显示数据,它会列出它们,但是是的,如何确保MDF没有问题?如果它是好的,它应该包含在github源代码中吗?我如何确保EF看到并连接到本地数据库?它没有给我崩溃或连接错误。是的,我确实得到了.mdf。。我认为它100%有效,我只是不确定。如果有问题,它会给你一个黄色的死亡页面屏幕(又名黄色蛋糕)。我只是想知道我下载的时候你可能有的数据是否没有带来。如果连接字符串是错误的,它会确保你知道它。嗯,那么你得到了mdf,如果你右键单击它的表,它会显示我输入的6或7行数据?控制器实际上只是这里的一行代码,我得到了mdf,但没有数据。当我添加数据时,虽然我在页面上得到了列表,其中包含了我添加的数据,但它实际上工作得很好。奇怪的是,在我自己的机器上,页面上没有显示数据。非常感谢您验证这一点。