Vâng, sau khi liên hệ với bộ phận Hỗ trợ của Microsft, tôi đã thấy nó hoạt động bình thường, nhưng nó chậm và ít nhiều vô dụng. Thực hiện sao lưu và sau đó khôi phục nhanh hơn nhiều và tôi sẽ sử dụng nó miễn là bản sao mới phải nằm trên cùng một máy chủ với bản gốc.
Mã làm việc như sau:
ServerConnection conn = new ServerConnection("rune\\sql2008");
Server server = new Server(conn);
Database newdb = new Database(server, "new database");
newdb.Create();
Transfer transfer = new Transfer(server.Databases["source database"]);
transfer.CopyAllObjects = true;
transfer.CopyAllUsers = true;
transfer.Options.WithDependencies = true;
transfer.DestinationDatabase = newdb.Name;
transfer.DestinationServer = server.Name;
transfer.DestinationLoginSecure = true;
transfer.CopySchema = true;
transfer.CopyData = true;
transfer.Options.ContinueScriptingOnError = true;
transfer.TransferData();
Thủ thuật là đặt thuộc tính DestinationDatabase. Điều này phải được đặt ngay cả khi đích giống với nguồn. Ngoài ra, tôi phải kết nối với máy chủ như một phiên bản được đặt tên thay vì sử dụng các tùy chọn kết nối khác.