static RepositoryTests() { Keys = new RepositoryKeys(); Keys.Add<Entry>(e => e.Slug); Keys.Add<Config>(c => c.Site); Keys.Add<User>(u => u.Username); }
static RepositoryTests() { Keys = new RepositoryKeys(); Keys.Add<Entry>(e => e.Slug); Keys.Add<Config>(c => c.Site); Keys.Add<User>(u => u.Username); JsonWorkingFolder = Path.Combine(Path.GetTempPath(), "NBlogIntegrationTests"); }
public MongoRepository(RepositoryKeys keys, string connectionString, string databaseName) { _keys = keys; _connectionString = connectionString; _databaseName = databaseName; _server = MongoServer.Create(_connectionString); _db = _server.GetDatabase(databaseName); }
static RepositoryTests() { Keys = new RepositoryKeys(); Keys.Add <Entry>(e => e.Slug); Keys.Add <Config>(c => c.Site); Keys.Add <User>(u => u.Username); JsonWorkingFolder = Path.Combine(Path.GetTempPath(), "NBlogIntegrationTests"); }
private static IContainer RegisterDependencies() { var builder = new ContainerBuilder(); builder.RegisterType <ThemeableRazorViewEngine>().As <IViewEngine>().InstancePerLifetimeScope().WithParameter( new NamedParameter("tenantSelector", new HttpTenantSelector()) ); var repositoryKeys = new RepositoryKeys(); repositoryKeys.Add <Entry>(e => e.Slug); repositoryKeys.Add <Config>(c => c.Site); repositoryKeys.Add <User>(u => u.Username); builder.RegisterType <JsonRepository>().Named <IRepository>("json").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("tenantSelector", new HttpTenantSelector()) }); builder.RegisterType <SqlRepository>().Named <IRepository>("sql").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("connectionString", "Server=.;Trusted_Connection=True;"), new NamedParameter("databaseName", "NBlog") }); builder.RegisterType <MongoRepository>().Named <IRepository>("mongo").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("connectionString", "mongodb://localhost"), new NamedParameter("databaseName", "nblog") }); builder.RegisterType <AzureBlobRepository>().Named <IRepository>("azure").InstancePerHttpRequest().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("tenantSelector", new HttpTenantSelector()) }); builder.RegisterControllers(typeof(ContainerConfig).Assembly) .WithParameter(GetResolvedParameterByName <IRepository>(DefaultRepositoryName)); builder.RegisterModelBinders(Assembly.GetExecutingAssembly()); builder.RegisterType <ConfigService>().As <IConfigService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>(DefaultRepositoryName)); builder.RegisterType <EntryService>().As <IEntryService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>(DefaultRepositoryName)); builder.RegisterType <UserService>().As <IUserService>().InstancePerLifetimeScope(); builder.RegisterType <MessageService>().As <IMessageService>().InstancePerLifetimeScope(); builder.RegisterType <ThemeService>().As <IThemeService>().InstancePerLifetimeScope(); builder.RegisterType <CloudService>().As <ICloudService>().InstancePerLifetimeScope(); builder.RegisterType <Services>().As <IServices>().InstancePerLifetimeScope(); var container = builder.Build(); return(container); }
public SqlRepository(RepositoryKeys keys, string connectionString, string databaseName) { _keys = keys; _serverConnectionString = connectionString; _databaseName = databaseName; AssertValidDatabaseName(); _db = new Database(GetDatabaseConnectionString(), "System.Data.SqlClient"); }
public MongoRepository(RepositoryKeys keys, string connectionString, string databaseName) { _keys = keys; _connectionString = connectionString; _databaseName = databaseName; _client = new MongoClient(connectionString); _server = _client.GetServer(); _db = _server.GetDatabase(databaseName); }
public AzureBlobRepository(RepositoryKeys keys, HttpTenantSelector tenantSelector) { _keys = keys; _tenantSelector = tenantSelector; var storage = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("AzureBlobRepository.ConnectionString")); var blobClient = storage.CreateCloudBlobClient(); string name = GetContainerSafeName(tenantSelector); _container = blobClient.GetContainerReference(name); }
static RepositoryTests() { Keys = new RepositoryKeys(); Keys.Add<Entry>(e => e.Slug); Keys.Add<Config>(c => c.Site); Keys.Add<User>(u => u.Username); JsonWorkingFolder = Path.Combine(Path.GetTempPath(), "NBlogIntegrationTests"); SqlConnectionString = "Server=.;Trusted_Connection=True;"; SqlDatabaseName = "NBlogIntegrationTests"; MongoDatabaseName = "nblog-integration-tests"; MongoConnectionString = "mongodb://localhost"; }
static RepositoryTests() { Keys = new RepositoryKeys(); Keys.Add <Entry>(e => e.Slug); Keys.Add <Config>(c => c.Site); Keys.Add <User>(u => u.Username); JsonWorkingFolder = Path.Combine(Path.GetTempPath(), "NBlogIntegrationTests"); SqlConnectionString = "Server=.;Trusted_Connection=True;"; SqlDatabaseName = "NBlogIntegrationTests"; MongoDatabaseName = "nblog-integration-tests"; MongoConnectionString = "mongodb://localhost"; }
protected IContainer RegisterDependencies() { var dataPath = "~/App_Data/" + ConfigurationManager.AppSettings["NBlog_Site"]; var builder = new ContainerBuilder(); builder.RegisterControllers(typeof(MvcApplication).Assembly); builder.RegisterModelBinders(Assembly.GetExecutingAssembly()); var repositoryKeys = new RepositoryKeys(); repositoryKeys.Add <Entry>(e => e.Slug); repositoryKeys.Add <Config>(c => c.Site); repositoryKeys.Add <User>(u => u.Username); builder.RegisterType <JsonRepository>().Named <IRepository>("json").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("dataPath", HttpContext.Current.Server.MapPath(dataPath)) }); builder.RegisterType <SqlRepository>().Named <IRepository>("sql").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("connectionString", "Server=.;Trusted_Connection=True;"), new NamedParameter("databaseName", "NBlog") }); builder.RegisterType <SqlRepository>().Named <IRepository>("mongo").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("connectionString", "mongodb://localhost"), new NamedParameter("databaseName", "nblog") }); builder.RegisterType <ConfigService>().As <IConfigService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>("json")); builder.RegisterType <EntryService>().As <IEntryService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>("sql")); builder.RegisterType <UserService>().As <IUserService>().InstancePerLifetimeScope(); builder.RegisterType <MessageService>().As <IMessageService>().InstancePerLifetimeScope(); builder.RegisterType <ThemeService>().As <IThemeService>().InstancePerLifetimeScope(); builder.RegisterType <CloudService>().As <ICloudService>().InstancePerLifetimeScope(); builder.RegisterType <Services>().As <IServices>().InstancePerLifetimeScope(); var container = builder.Build(); return(container); }
private static IContainer RegisterDependencies() { // Get sql database name from initial catalog in the connection string var sqlConnectionString = ConfigurationManager.ConnectionStrings["Sql"].ConnectionString; var sqlConnectionStringBuilder = new SqlConnectionStringBuilder(sqlConnectionString); var sqlDatabaseName = sqlConnectionStringBuilder.InitialCatalog; var builder = new ContainerBuilder(); builder.RegisterType <ThemeableRazorViewEngine>().As <IViewEngine>().InstancePerLifetimeScope().WithParameter( new NamedParameter("tenantSelector", new HttpTenantSelector()) ); var repositoryKeys = new RepositoryKeys(); repositoryKeys.Add <Entry>(e => e.Slug); repositoryKeys.Add <About>(a => a.Title); repositoryKeys.Add <Config>(c => c.Site); repositoryKeys.Add <User>(u => u.Username); repositoryKeys.Add <Image>(i => i.FileName); builder.RegisterType <JsonRepository>().Named <IRepository>("json").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("tenantSelector", new HttpTenantSelector()) }); builder.RegisterType <SqlRepository>().Named <IRepository>("sql").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("connectionString", ConfigurationManager.ConnectionStrings["Sql"].ConnectionString), new NamedParameter("databaseName", sqlDatabaseName) }); builder.RegisterType <MongoRepository>().Named <IRepository>("mongo").InstancePerLifetimeScope().WithParameters(new[] { new NamedParameter("keys", repositoryKeys), new NamedParameter("connectionString", "mongodb://localhost"), new NamedParameter("databaseName", "nblog") }); builder.RegisterType <AzureBlobRepository>().Named <IRepository>("azureblob").InstancePerRequest().WithParameters(new[] { new NamedParameter("keys", repositoryKeys) }); builder.RegisterControllers(typeof(ContainerConfig).Assembly) .WithParameter(GetResolvedParameterByName <IRepository>(JsonRepositoryType)); builder.RegisterModelBinders(Assembly.GetExecutingAssembly()); builder.RegisterType <ConfigService>().As <IConfigService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>(JsonRepositoryType)); builder.RegisterType <EntryService>().As <IEntryService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>(JsonRepositoryType)); builder.RegisterType <AboutService>().As <IAboutService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>(JsonRepositoryType)); builder.RegisterType <ImageService>().As <IImageService>().InstancePerLifetimeScope() .WithParameter(GetResolvedParameterByName <IRepository>(ConfigurationManager.AppSettings["ImagesRepositoryType"])); builder.RegisterType <UserService>().As <IUserService>().InstancePerLifetimeScope(); builder.RegisterType <MessageService>().As <IMessageService>().InstancePerLifetimeScope(); builder.RegisterType <ThemeService>().As <IThemeService>().InstancePerLifetimeScope(); builder.RegisterType <CloudService>().As <ICloudService>().InstancePerLifetimeScope(); builder.RegisterType <Services>().As <IServices>().InstancePerLifetimeScope(); var container = builder.Build(); return(container); }
public AzureBlobRepository(RepositoryKeys keys) { _keys = keys; _blobClient = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["AzureBlob"].ConnectionString).CreateCloudBlobClient(); }
public JsonRepository(RepositoryKeys keys, string dataPath) { _keys = keys; _dataPath = dataPath; }
public JsonRepository(RepositoryKeys keys, HttpTenantSelector tenantSelector) { _keys = keys; _tenantSelector = tenantSelector; }