/// <summary> /// Retrieves the EntityOperation for a particular entity type. Only a single instance is instantiated /// </summary> /// <typeparam name="TEntity"></typeparam> /// <returns></returns> IEntityReaderWriter <TEntity> IDataManager.Get <TEntity>() { Contract.Ensures(Contract.Result <IEntityReaderWriter <TEntity> >() != null); var clientThreadId = Thread.CurrentThread.ManagedThreadId; var provider = (this as IEntityGateway); IEntityReaderWriter <TEntity> ret = null; if (!_map.Has(clientThreadId)) { _map.Add(clientThreadId, CreateDbContext()); } ret = new LegacyProvider <TEntity>(); (ret as Interfaces.IEntityGatewayClient).Register(this as IEntityGateway, clientThreadId); return(ret); }
public EntityManager( IFormatter <TInput, TOutput> formatter, IEntityReaderWriter <TKey, TInput, TOutput> entityIO) => (this.formatter, this.io, schema) =