Select Git revision
DTBlock.py
Forked from
ACS / Public / Teaching materials / Systemtheorie 2 / lecture-tutorials
Source project has a limited visibility.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
CsDatabase.tt 3.53 KiB
<#@ template language="C#" debug="True" hostSpecific="False" #>
<#@ output extension=".generated.cs" #>
<#@ include file="$(ProjectDir)\LinqToDB.Templates\LinqToDB.SqlServer.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)\LinqToDB.Templates\PluralizationService.ttinclude" #>
<#@ assembly name="$(ProjectDir)..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Coscine.Migrations.1.8.0-topic-1125-apito0001\lib\net461\Coscine.Migrations.dll" #>
<#@ assembly name="$(ProjectDir)..\packages\Coscine.Database.Helpers.1.1.0\lib\net461\Coscine.Database.Helpers.dll" #>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.DependencyInjection.2.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.2.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\FluentMigrator.Runner.3.2.8\lib\net461\FluentMigrator.Runner.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\FluentMigrator.Runner.Core.3.2.8\lib\net461\FluentMigrator.Runner.Core.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.Logging.2.0.1\lib\netstandard2.0\Microsoft.Extensions.Logging.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.Options.2.0.1\lib\netstandard2.0\Microsoft.Extensions.Options.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\FluentMigrator.Abstractions.3.2.8\lib\net461\FluentMigrator.Abstractions.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.Logging.Abstractions.2.0.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\FluentMigrator.Runner.SqlServer.3.2.8\lib\net461\FluentMigrator.Runner.SqlServer.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\FluentMigrator.3.2.8\lib\net461\FluentMigrator.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.Primitives.2.0.0\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\FluentMigrator.Extensions.SqlServer.3.2.8\lib\net461\FluentMigrator.Extensions.SqlServer.dll"#>
<#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.Configuration.Abstractions.2.0.1\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll"#>
<#@ import namespace="System" #>
<#@ import namespace="Coscine.Configuration" #>
<#@ import namespace="Coscine.Migrations" #>
<#@ import namespace="Coscine.Database.Helpers" #>
<# NamespaceName = "Coscine.Database.DataModel"; #>
<#
var _databaseName = $"Coscine_Database.T4_model_{Guid.NewGuid()}";
var settings = new ConfigurationConnectionSettings() { Configuration = new ConsulConfiguration() };
settings.LoadSettingsFromConfiguration();
settings.Database = _databaseName;
var _migrator = new CoscineMigrations()
{
ConnectionSettings = settings
};
var _helper = new DatabaseMasterHelper
{
ConnectionSettings = settings
};
_helper.EnsureDatabase(_databaseName);
_migrator.MigrateUp();
DataContextName ="CoscineDB";
LoadSqlServerMetadata(_migrator.ConnectionSettings.DataSource, _migrator.ConnectionSettings.Database, _migrator.ConnectionSettings.UserId, _migrator.ConnectionSettings.Password);
GenerateModel();
_helper.KillConnectionsToDatabase(_databaseName);
_helper.DropDatabase(_databaseName);
#>