1

プログラミングが初めてなので、asp.net MVC で c# を使用してテーブルから 1 つのセルの値を取得しようとしています。ここで私がしようとしていること:

 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 を学習する前に、基本的にはASP.NET MVC を学習する前に、基本的な LINQ を学習することを強くお勧めします。そうしないと、ASP.NET MVC で苦労することになります。また、別々のフレームワークを混合せずに個別に学習している人にもお勧めします。それらに慣れたら、1 つのプロジェクトに混在させることができます。

于 2012-10-09T16:05:23.463 に答える