私はasp.net mvc-4 Webアプリケーションで作業していますが、私はエンティティフレームワーク5.0を使用しています。 .edmxファイルとDBContextクラスを生成したado.netエンティティフレームワークを使用してデータベーステーブルをマップしました。次のように、私は直接データベース・エンティティと対話リポジトリモデルクラスを持っているasp.net mvcは、別のDBContextオブジェクト内で開始されたDBcontextオブジェクトをどのように処理するのですか?
: - - :
は、今私はasp.netのMVCは次のシナリオをどのように処理します確認していない
public class Repository
{
private MyEntities my = new MyEntities();
public void Save()
{
my.SaveChanges();
}
また、私は次のように、上記のリポジトリと別のAPIリポジトリクラスを開始した、以下のControllerクラスを持っている: -
public class ServerController : Controller
{
Repository repository = new Repository();
APIRepository APIrepository = new APIRepository();
//code goes here
Public ActionResult Create(Emp e)
{
//code goes here..
var result = APIreposioty.SendCall(...);
repository.Save();
}
APIRepositotyも開始します次のようにリポジトリ、: -
public class APIRepository
{
Repository repository = new Repository();
は今、私のコントローラクラスの内部で、私は以下の持っている: - レポクラスはMyEntitiesを開始
- それは直接リポジトリクラスを開始し、()。
- APIrepoクラスが開始され、そこではAPIrepoクラスがリポジトリクラスを開始します。
ここで、私はrepositoty.Save()をアクションメソッド内で呼び出しますか?それはエンティティオブジェクトをAPIリポジトリ内のレポジトリ&内に保存しますか? 2つの別々のコンテキストオブジェクトがユーザセッションによって管理されるでしょうか?彼らはお互いに干渉しないのですか?