示例#1
0
 public LoadServices(DbContext dbContext,
                     IEventManager eventManager,
                     IEntityServicesFactory entityServicesFactory)
 {
     _eventManager          = eventManager;
     _entityServicesFactory = entityServicesFactory;
     _dbContext             = dbContext;
 }
示例#2
0
 public UpdateServices(DbContext dbContext,
                       IEntryFinder entryServices,
                       IEntityServicesFactory entityServicesFactory,
                       IEventManager eventManager,
                       DetachedOptionsExtension options)
 {
     _dbContext             = dbContext;
     _eventManager          = eventManager;
     _entryServices         = entryServices;
     _entityServicesFactory = entityServicesFactory;
     _options = options;
 }
示例#3
0
        public EntryFinder(DbContext dbContext,
                           IEntityServicesFactory entityServicesFactory)
        {
            _entityServicesFactory = entityServicesFactory;
            _dbContext             = dbContext;

            IStateManager stateManager = dbContext.ChangeTracker.GetInfrastructure();

            // HACK:
            MethodInfo findMapMethod = stateManager.GetType()
                                       .GetTypeInfo().DeclaredMethods.Where(m => m.Name == "FindIdentityMap").FirstOrDefault();

            _findIdentityMap = (Func <IKey, IIdentityMap>)findMapMethod.CreateDelegate(typeof(Func <IKey, IIdentityMap>), stateManager);
        }