C# EF不会崩溃,但没有数据返回到视图
我刚开始关注Adam Freeman关于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
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,但没有数据。当我添加数据时,虽然我在页面上得到了列表,其中包含了我添加的数据,但它实际上工作得很好。奇怪的是,在我自己的机器上,页面上没有显示数据。非常感谢您验证这一点。