C# 铸造会话变量-ViewBag MVC4-铸造

C# 铸造会话变量-ViewBag MVC4-铸造,c#,asp.net-mvc,C#,Asp.net Mvc,编程新手,我尝试在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; 要将数据获取到我使用的视图,请在

编程新手,我尝试在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=会话[“持续时间”]; ViewBag.Duration=温度

并且认为:

 @ViewBag.Duration
我明白了

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

非常感谢您的建议。

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

var duration = db
    .MyTable
    .Where(c => c.Day == date && c.ID == id)
    .Select(c => c.Duration)
    .First();
但是要小心,因为如果没有与
.Where()
子句匹配的记录,
.First()
扩展方法将抛出异常。在这种情况下,您可以考虑使用<代码> .FrStReDebug()/代码>方法.< /P>
我还强烈建议您在学习实体框架之前学习,主要是在学习ASP.NET MVC之前学习。否则,您将很难使用ASP.NET MVC。我还建议人们孤立地学习单独的框架,而不要将它们混合在一起。一旦你熟悉了它们,你就可以把它们混合在一个项目中。

首先
不会在有多个结果时抛出异常
Single
will.@DStanley,
First
将在有0条匹配记录时引发异常<如果有0个或多个匹配记录,则代码>单个将引发异常。谢谢你指出这一点。我已经更新了我的答案,因为我最初错误地指出,如果找到多条记录,
First
将抛出异常。