internal string CreateConfigurationFile(string projectPath, string repoName, string migrationFolder, MigrationToUse migrationType) { var projectNamespace = new ProjectEvalutionHelper().RootNameSpace(projectPath); var className = repoName + "Configuration"; var migrationFolderLocation = GetMigrationFolderLocation(projectPath, migrationFolder); if (!Directory.Exists(migrationFolderLocation)) { Directory.CreateDirectory(migrationFolderLocation); } var fileBuilder = new StringBuilder(); fileBuilder.AppendLine("using NHibernateRepo.Configuration;"); fileBuilder.AppendLine("using NHibernateRepo.Migrations;"); fileBuilder.AppendLine(""); fileBuilder.AppendLine(string.Format("namespace {0}.{1}", projectNamespace, migrationFolder)); fileBuilder.AppendLine("{"); fileBuilder.AppendLine(" public class " + className + " : RepoMigrationConfigurationBase<" + repoName + ">"); fileBuilder.AppendLine(" {"); fileBuilder.AppendLine(" public " + repoName + "Configuration()"); fileBuilder.AppendLine(" {"); fileBuilder.AppendLine(" Enabled = true;"); fileBuilder.AppendLine(" MigrationType = MigrationToUse." + migrationType + ";"); fileBuilder.AppendLine(" RootMigrationFolder = @\"Migrations\\" + repoName + "Migrations\";"); fileBuilder.AppendLine(" }"); fileBuilder.AppendLine(" }"); fileBuilder.AppendLine("}"); var path = Path.Combine(CreateFileLocationPath(projectPath, className, migrationFolder)); File.WriteAllText(path, fileBuilder.ToString()); return path; }
internal string CreateConfigurationFile(string projectPath, string repoName, string migrationFolder, MigrationToUse migrationType) { var projectNamespace = new ProjectEvalutionHelper().RootNameSpace(projectPath); var className = repoName + "Configuration"; var migrationFolderLocation = GetMigrationFolderLocation(projectPath, migrationFolder); if (!Directory.Exists(migrationFolderLocation)) { Directory.CreateDirectory(migrationFolderLocation); } var fileBuilder = new StringBuilder(); fileBuilder.AppendLine("using NHibernateRepo.Configuration;"); fileBuilder.AppendLine("using NHibernateRepo.Migrations;"); fileBuilder.AppendLine(""); fileBuilder.AppendLine(string.Format("namespace {0}.{1}", projectNamespace, migrationFolder)); fileBuilder.AppendLine("{"); fileBuilder.AppendLine(" public class " + className + " : RepoMigrationConfigurationBase<" + repoName + ">"); fileBuilder.AppendLine(" {"); fileBuilder.AppendLine(" public " + repoName + "Configuration()"); fileBuilder.AppendLine(" {"); fileBuilder.AppendLine(" Enabled = true;"); fileBuilder.AppendLine(" MigrationType = MigrationToUse." + migrationType + ";"); fileBuilder.AppendLine(" RootMigrationFolder = @\"Migrations\\" + repoName + "Migrations\";"); fileBuilder.AppendLine(" }"); fileBuilder.AppendLine(" }"); fileBuilder.AppendLine("}"); var path = Path.Combine(CreateFileLocationPath(projectPath, className, migrationFolder)); File.WriteAllText(path, fileBuilder.ToString()); return(path); }