отсутствует ссылка?Я уже добавила - PullRequest
0 голосов
/ 11 июня 2018

Я пытаюсь восстановить свою БД через C #, но получаю эту ошибку:

enter image description here

, даже если я добавил ссылку на Microsoft.SqlServer.Smo

enter image description here

Вот мой код:

void RestoreDatabase(String databaseName , String backUpFile , String serverName , String userName , String password)
    {
        Microsoft.SqlServer.Management.Smo.Server smoServer =
  new Server(new ServerConnection(server));

        Database db = smoServer.Databases['MyDataBase'];
        string dbPath = Path.Combine(db.PrimaryFilePath , 'MyDataBase.mdf');
        string logPath = Path.Combine(db.PrimaryFilePath , 'MyDataBase_Log.ldf');
        Restore restore = new Restore();
        BackupDeviceItem deviceItem =
            new BackupDeviceItem('d:\MyDATA.BAK' , DeviceType.File);
        restore.Devices.Add(deviceItem);
        restore.Database = backupDatabaseTo;
        restore.FileNumber = restoreFileNumber;
        restore.Action = RestoreActionType.Database;
        restore.ReplaceDatabase = true;
        restore.SqlRestore(smoServer);

        db = smoServer.Databases['MyDataBase'];
        db.SetOnline();
        smoServer.Refresh();
        db.Refresh();
    }

Пожалуйста, если кто-то знаком с C # и может ответить на него.

1 Ответ

0 голосов
/ 11 июня 2018

Класс восстановления

Объект восстановления обеспечивает программный доступ к операциям восстановления.

Пространство имен : Microsoft.SqlServer.Management.Smo

Сборка : Microsoft.SqlServer.SmoExtended (в Microsoft.SqlServer.SmoExtended.dll)

Так что вам потребуется

Microsoft.SqlServer.SmoExtended.dll

Я думаю, вы можете найти его здесь

https://www.nuget.org/packages/Microsoft.SqlServer.SmoExtended.dll/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...