私はEF 4.0でwinformアプリケーションに取り組んでいます。
以下のコードは、「ObjectStateManager にアタッチされていないため、オブジェクトをデタッチできません」という問題でクラッシュします。リストをコンテキストから切り離そうとしたとき。
public List<Users> FindUserList()
{
List<Users> lstUsers = null;
var q = from c in context.Users
select c;
lstUsers = q.ToList();
//context.Detach(lstUsers.First());
context.Detach(lstUsers);
return lstUsers;
}
驚いたことに、コメント付きのコードで行ったように、リストからオブジェクトを 1 つだけ切り離すと、問題なく動作します。
リストを切り離そうとするとなぜクラッシュするのか、誰か教えてもらえますか? また、リストのすべてのオブジェクトを切り離すにはどうすればよいでしょうか?