internal DatabaseContext(ISystemContext systemContext, IConfiguration configuration)
: base(systemContext)
{
if (systemContext == null)
throw new ArgumentNullException("systemContext");
if (configuration == null)
throw new ArgumentNullException("configuration");
ContextScope.Unregister<IConfiguration>();
ContextScope.RegisterInstance<IConfiguration>(configuration);
ContextScope.RegisterInstance<IDatabaseContext>(this);
SystemContext = systemContext;
Configuration = configuration;
InitStorageSystem();
}