protected IEntityReader GetReader(Type idType, Type entityType) { if (_cacheReaders) { var key = idType + "." + entityType; lock (_syncRoot) if (!_readers.ContainsKey(key)) { _readers.Add(key, _locator.Resolve(typeof(IEntityReader <,>).MakeGenericType(idType, entityType))); } return(_readers[key] as IEntityReader); } return(_locator.Resolve(typeof(IEntityReader <,>).MakeGenericType(idType, entityType)) as IEntityReader); }
protected virtual IEntityWriter <IdType, EntityType> GetWriter() { return(_serviceLocator.Resolve <IEntityWriter <IdType, EntityType> >()); }