2

asp.net vNext SPA アプリケーションで EF を使用しようとしています。

AddScoped() を使用してビルドイン依存性注入コンテナーにコンテキスト クラスを登録しています (例にあるように) が、エンティティに対して削除操作を実行しようとすると、奇妙なエラーが発生します。削除が機能することもあれば、

Invalid operation. The connection is closed.

そして時々私は

The connection was not closed. The connection's current state is open.

これは削除操作でのみ発生し、「接続が開いています」と「接続が閉じられています」が表示されるパターンが見つかりません。

これが私の削除メソッド本体です (これはベース コントローラーであるため、メソッドは仮想ですが、オーバーライドはまだ存在しません)。

public virtual async Task<IActionResult> Delete(int id)
{
    var t = await Items.SingleOrDefaultAsync(i => i.ID == id);
    if (t == null)
        return new HttpStatusCodeResult((int)HttpStatusCode.NoContent);

    Items.Remove(t);
    AppContext.SaveChanges();

    return new HttpStatusCodeResult((int)HttpStatusCode.OK);
}
4

1 に答える 1