1

编程新手,我想在 asp.net MVC 中使用 c# 从表中获取一个单元格的值;这是我正在尝试的:

 DALEntities db = new DALEntities();
  var duration = db.MyTable.Where(c => c.Day == date && c.ID == id).Select(c => c.Duration);
            Session["duration"] = duration;

将数据获取到我使用的视图中,在控制器中: var temp = Session["duration"]; ViewBag.Duration = temp;

在视图中:

 @ViewBag.Duration

我明白了

System.Data.Objects.ObjectQuery`1[System.String]

我会很感激你的建议。

4

1 回答 1

3

您可以在最后调用 a.First()以急切地执行查询并获得与此条件匹配的单个结果:

var duration = db
    .MyTable
    .Where(c => c.Day == date && c.ID == id)
    .Select(c => c.Duration)
    .First();

不过要小心,因为如果没有与您的.Where()子句匹配的记录,.First()扩展方法将引发异常。在这种情况下,您可以考虑使用该.FirstOrDefault()方法。

我也非常强烈建议您在学习 Entity Framework之前学习基本的 LINQ ,并且主要是 学习 ASP.NET MVC 之前。否则,您将在使用 ASP.NET MVC 时遇到很多困难。我还建议人们孤立地学习单独的框架,而不是将它们混合在一起。一旦你熟悉了它们,你就可以混合在一个项目中。

于 2012-10-09T16:05:23.463 回答