既存のデータベースにmigratordotnetを使用しようとしています。私のデータベースには約 100 個のテーブルがあり、最初の移行を生成しようとしています。
使ってみました
C:\migrations>Migrator.Console.exe SqlServer "Data Source=.\sqlexpress;Initial Catalog=my_database;Integrated Security = True;" MigracijeBaze.dll -dump InitialMigration.cs
残念ながら、生成された移行には typeof(string) を持つすべての列があります。Int、DateTime、Decimal 列は文字列に変換されます。たとえば、テーブル Godine の場合
CREATE TABLE [dbo].[Godine](
[ID] [int] IDENTITY(1,1) NOT NULL,
[FirmaID] [nvarchar](2) NOT NULL,
[Godina] [int] NOT NULL,
[BazaSifri] [nvarchar](50) NOT NULL,
[BazaPodataka] [nvarchar](50) NOT NULL,
CONSTRAINT [PK_Godine] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
移行が生成されます
Database.AddTable("Godine",
new Column("ID", typeof(String)),
new Column("FirmaID", typeof(String)),
new Column("Godina", typeof(String)),
new Column("BazaSifri", typeof(String)),
new Column("BazaPodataka", typeof(String)),
);
私は何か間違ったことをしていますか?初期移行を行うためのベスト プラクティスは何ですか?