编程新手,我想在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]
感谢您的建议。
答案 0 :(得分:3)
您可以在最后调用.First()
以急切执行查询并获得符合此条件的单个结果:
var duration = db
.MyTable
.Where(c => c.Day == date && c.ID == id)
.Select(c => c.Duration)
.First();
但要小心,因为如果没有与.Where()
子句匹配的记录,.First()
扩展方法将抛出异常。在这种情况下,您可以考虑使用.FirstOrDefault()
方法。
我还强烈建议您在学习实体框架之前学习basic LINQ ,并且在学习ASP.NET MVC之前主要。否则你将在ASP.NET MVC中苦苦挣扎。我还建议人们在不混合的情况下孤立地学习单独的框架。熟悉它们后,您可以混合使用一个项目。