0

一意のSaveChangesを呼び出して、使用するすべてのリポジトリのすべての変更に影響を与えるにはどうすればよいですか?すべてのリポジトリとSaveメソッドを含むクラスを作成する必要がありますか?それを行うための最良の方法は何ですか?


私はこれを試しています:

public ActionResult Create()
{
    Product Product = new Product() { Id = 1, Name = "test", Amount = 1 };

    if (_productService.Insert(Product))
    {
        context.SaveChanges();

        return View();
    }

    return RedirectToAction("Index");
}

これは正しいです?

4

2 に答える 2

0

最良の方法は作業単位と呼ばれ、通常、リポジトリのコンストラクターに渡されるEFコンテキストのラッパークラスです。Saveあなたはこの新しいクラスを呼びます。

于 2012-04-17T18:59:03.810 に答える
0

IDbContext/ObjectContextをリポジトリのコンストラクターに渡します。リポジトリを操作し、リポジトリではなくコンテキストで保存を呼び出します。

リポジトリが必要かどうかも考え直します。

于 2012-04-17T19:37:29.250 に答える