天天看点

MVC保证线程内实例唯一(5)

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Data.Entity;  
  4. using System.Linq;  
  5. using System.Text;  
  6. using Dulei.Model;  
  7. namespace Dulei.DAL  
  8. {  
  9.      public class EFDbcontextFactory  
  10.     {  
  11.          public static DbContext GetcurrentDbcontext()  
  12.          {  
  13.              //可以直接对Model模型进行切换。只要更改DataModelContainer()  
  14.              return new DataModelContainer();  
  15.          }  
  16.     }  
  17. }  

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Runtime.Remoting.Contexts;
using System.Runtime.Remoting.Messaging;
using System.Text;
using Dulei.Model;


namespace Dulei.DAL
{
     public class EFDbcontextFactory
    {
         public static DbContext GetcurrentDbcontext()
         {
             DbContext db = (DbContext) CallContext.GetData("Dbcontext");
             if (db==null)
             {
                 db = new DataModelContainer();
                 CallContext.SetData("Dbcontext",db);
             }
             //也可以使用HttpContext是一样的
             return db;
         }
    }
}
           
mvc

继续阅读