私は mvc3 アプリケーションを持っていて、データ アクセスに最初に EF 5 コードを使用しています。次のエラー メッセージが表示されますが、その理由はわかりません。
これがなぜなのか、どうすれば問題を回避できるのかを誰かが説明できますか?
ObjectContext インスタンスは破棄されており、接続を必要とする操作には使用できなくなりました。
私のデータ アクセス コードは次のとおりです。
var list = new List<Task>();
using (var db = new SiteContext())
{
var queryableAll = db.Tasks.AsQueryable();
// setup order descending
queryableAll = (orderByTimeDescending)
? queryableAll.OrderByDescending(x => x.Created)
: queryableAll.OrderBy(x => x.Created);
list.AddRange(queryableAll
.Include("Customer")
.Include("Collection").ToList());
}
return list;
私の見解:
@foreach (var task in Model.Tasks.OrderByDescending(x => x.Created))
{
Html.RenderPartial("_ProjectLine", task);
}
私の部分的な_ProjectLine
@model ProjectManagement.DataAccess.Models.Task
<tr>
<td>@Model.TaskId</td>
<td>
@Html.ActionLink(Model.Name, "ManageTask", "Task", new { id = Model.TaskId }, null)
</td>
<td>
@Model.Collection.Name
</td>
<td>@Model.Customer.Name</td>
</tr>
アップデート:
部分ビューのレンダリング中に例外が発生します。使用を削除して、ガベージコレクターが処分するために残しておくと、うまくいきます。しかし、私はこの解決策が好きではありません。