ObjectListViewを使用してデータベース情報を視覚化する小さなプログラムがあります。現在、私はアイテムを追加しようとしており、下The operation cannot be completed because the DbContext has been disposed.
の行を強調表示しているアイテムを取得し続けていolvEntityTypes.AddObject(et);
ます。
コード:
string typeName = tbTypeName.Text;
string desc = tbDesc.Text;
EntityTypes et;
using (FCERTSModelContainer db = new FCERTSModelContainer())
{
// Create and save new row for the EntityTypes table.
et = new EntityTypes { EntityTypeName = typeName, Description = desc };
db.EntityTypes.Add(et);
db.SaveChanges();
olvEntityTypes.AddObject(et);
}
SaveChanges()
コンテキストも閉じているのではないか と思いましたが、変更を保存する前にオブジェクトを追加しようとすると、同じエラーがスローされます。olvEntityTypes.AddObject(et);
ブロックの外に置くのusing
も失敗です。- 次のような方法でデータベースにクエリを実行しても、エラーはスローされません。
コード:
var query = from ent in db.EntityTypes
orderby ent.EntityTypeName
select ent;
olvEntityTypes.SetObjects(query);
だから、なぜこれがエラーをスローしているのか、そしてそれを修正する方法について、私は今少し途方に暮れています.