Got следующий execption пытается applay миграции с использованием MigratorDotNet:MigratorDotNet: Нет публичных классов с атрибутом миграции были найдены
No public classes with the Migration attribute were found
Построить secceded в общем, не появляются без ошибок конфигурации.
У меня есть построить конфигурационный файл со следующим содержанием:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectRoot Condition="'$(ProjectRoot)' == ''">$([System.IO.Directory]::GetParent($(MSBuildProjectDirectory)))</ProjectRoot>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<ClassLibraryOutputDirectory>bin\$(Configuration)</ClassLibraryOutputDirectory>
<MigrationsProject>$(ProjectRoot)\Solution\SqlMigrator\SqlMigrator.csproj</MigrationsProject>
</PropertyGroup>
<Import Project="Migrator.Targets" />
<Target Name="Build-Migrations">
<MSBuild Projects="$(MigrationsProject)" Targets="Build">
<Output TaskParameter="TargetOutputs" ItemName="MigrationAssemblies" />
</MSBuild>
<Message Text="Built: @(MigrationAssemblies)"/>
</Target>
<Target Name="Migrate" DependsOnTargets="Build-Migrations">
<Message Text="Migrating: @(MigrationAssemblies)"/>
<Migrate Provider="MySql"
Connectionstring="server=localhost;User Id=root;password=;database=loveproject"
Migrations="@(MigrationAssemblies)" />
</Target>
</Project>
У меня есть один тест миграции:
namespace SqlMigrator
{
using Migrator.Framework;
using System.Data;
[Migration(20140401110402)]
public class TestMigrate : Migration
{
public override void Up()
{
this.Database.ExecuteNonQuery(@"CREATE TABLE example (id INT, data VARCHAR(100));");
}
public override void Down()
{
}
}
}
Выполнение миграции: C: \ Windows \ Microsoft.NET \ Framework64 \ v4 .0.30319 \ MSBuild.exe mbuild.proj/t: Миграция
Вы определенно строите против той же сборки с определением класса миграции? – Rup
Честно говоря, я совершенно не уверен, что я делаю это правильно. Это первый раз, когда я работаю с скриптами msbuild и с migratordotnet. :) –