0

私は MVC 3 と Entity Framework を c# 言語で使用しています。IRepository インターフェイスを実装するリポジトリ クラスがあります。私のプロジェクトでは、オブジェクトを削除するための再帰的なロジックが必要です。再帰関数によって実装されています。しかし、それはこのエラーを発生させます:

「/」アプリケーションでサーバー エラーが発生しました。セッションで他のスレッドが実行されているため、新しいトランザクションは許可されません。

私のコードはこれに似ています:

public void Delete(long ObjectId)
{
  if(SomeThing ==true)
  {
    var items = TRepository.Find(o=>o.Id==ObjectId);
    foreach(var t in items)
      {
        Delete(t.ObjectId);
      }
  }
  Delete(ObjectId);
  TRepository.SaveChanges();//here raise error!!!
}
4

0 に答える 0