2011-12-05 39 views
5

Tôi đang cố gắng di chuyển làm việc với dự án của mình bằng trình di chuyển thông thạo. Nhưng do thiếu tài liệu, tôi đang cố gắng tìm ra cách quay ngược và có phương thức Down được gọi là lớp di trú của tôi.Quay lại phiên bản trước đó trong Fluent Migrator

tôi thiết lập các db với ban đầu phiên bản 1 lớp:

[Migration(1)] 
    public class Baseline : Migration 
    { 
     public override void Up() 
     { 
      Execute.Script("1_Baseline\\baseline.sql"); 
     } 

     public override void Down() { } 
    } 

Tôi đang chạy di cư thông qua một tập tin batch chứa sau:

" .... tools \ \ fluentmigrator \ migrate.exe "- kết nối" Dữ liệu Nguồn =. \ sqlexpress; Danh mục ban đầu = ekmDomains; Tích hợp Bảo mật = true; multipleactiveresultsets = true; " --db SqlServer2005 - mục tiêu "bin \ Release \ EkmDomains.Migrations.dll"

Điều này làm việc tốt. Vì vậy, tôi sau đó đã viết một lớp di cư thứ hai chỉ để kiểm tra nó ra:

[Migration(2)] 
    public class AddNewTable : Migration 
    { 
     public override void Up() 
     { 
      Create.Table("NewTable").WithColumn("name").AsString(); 
     } 

     public override void Down() 
     { 
      Delete.Table("NewTable"); 
     } 
    } 

Một lần nữa sau khi chạy tập tin thực thi, mọi thứ hoạt động tốt. Sau đó tôi xem xét các tùy chọn dòng lệnh cho công cụ di chuyển thông thạo và thấy tùy chọn --version. Tôi giả định rằng để quay trở lại phiên bản trước, tôi chỉ cần cung cấp --version 1Down của AddNewTable sẽ được gọi. Tuy nhiên, điều đó không vui vẻ. Bảng điều khiển chỉ hiển thị phương thức 'cam kết giao dịch` rồi đóng. Nhưng bảng chưa bị xóa và số phiên bản không thay đổi.

Tôi đang làm điều này một cách sai lầm hoặc có ai có thể thấy một số lỗi cơ bản trong cách tôi đang làm điều này?

Trả lời

15

Để di chuyển xuống, bạn sử dụng "-t migrate: down". Bên cạnh đó xuống và lên, sự giúp đỡ cho migrate.exe cũng liệt kê rollback, rollback: toversion và rollback: tất cả.

+0

cổ vũ giao phối, không thể tin rằng tôi đã bỏ lỡ điều đó! rtfm ftw – jcvandan

Các vấn đề liên quan