PDA

View Full Version : سوال: ارور موقع بک آپ گرفتن به روش smo



r4hgozar
دوشنبه 09 آذر 1394, 09:10 صبح
سلام.
ارور من موقع بک آپ گرفتن به روش smo هست که faild connoct to server (localdb)\v11.0 و هم موقع ای که sql express r2 نصب کردم تا بتونم نسخه واسه exe کنم باز هم ارور faild connoct to server .\Sqlexpress
رو میده. دلیل این چی می تونه باشه؟

An unhandled exception of type ‘Microsoft.SqlServer.Management.Smo.FailedOperat ionException’ occurred in PresentationFramework.dll

ژیار رحیمی
دوشنبه 09 آذر 1394, 09:56 صبح
سلام ConnectionString و کد Backup رو بزارید تا ببینیم مشکل از کجاست.الان با ConnectionString وصل میشه به Database درسته ؟و فقط حین backupگیری Error میدهد؟

r4hgozar
دوشنبه 09 آذر 1394, 10:32 صبح
سلام.
restore هم همینه


public string conbakup = @"data source=.\SQLEXPRESS;initial catalog=DBname;integrated security=True;MultipleActiveResultSets=True;App=En tityFramework"";
private void btn_Backup_Click(object sender, RoutedEventArgs e)
{
using (SqlConnection con = new SqlConnection(conbakup))
{
ServerConnection srvConn = new ServerConnection(con);
Server srvr = new Server(srvConn);


if (srvr != null)
{
//try
//{
Backup backupdb = new Backup();
backupdb.Action = BackupActionType.Database;
backupdb.Database = "DBname";
SaveFileDialog savefd = new SaveFileDialog();
savefd.Filter = "Backup File (*.Bak)|*.Bak";
savefd.FileName = DateTime.Now.ToString("ddMMyyyy_HHmmss");
Nullable<bool> result = savefd.ShowDialog();
if (result == true)
{
BackupDeviceItem bkpDevice = new BackupDeviceItem(savefd.FileName, DeviceType.File);
backupdb.Devices.Add(bkpDevice);
backupdb.SqlBackup(srvr);
MessageBox.Show("Backup Database Successfully");
}
//}
//catch (Exception )
//{
// MessageBox.Show("Error");
//}
}
}
}


من تو stackoverflow خوندم که شاید بخاطر dll های smo باشه.
اما هر ورژنی رو می زارم باز هم ارور میده.

ژیار رحیمی
دوشنبه 09 آذر 1394, 11:00 صبح
مشکل از مسیر Backup گیری هست این خط از کد

BackupDeviceItem bkpDevice = new BackupDeviceItem(savefd.FileName, DeviceType.File);

باید به جای savefd.FileName از [مسیر کامل Backup + نام فایلBackup + پسوند فایل Backup که(.BAK)]

r4hgozar
دوشنبه 09 آذر 1394, 11:09 صبح
اما من وقتی debug میگیرم خطا رو از خط بعدش می گیره یعنی
backupdb.SqlBackup(srvr);
و savefd.FileName هم مساوی

"C:\\Users\\passerby\\Desktop\\30112015_114041.Bak"

یعنی همون که شما گفتین.

محمد رضا فاتحی
دوشنبه 09 آذر 1394, 11:13 صبح
محیط SQL Managment من روی دسکتاپ پشتیبان نمیگیره...مسیر ذخیره سازی رو تغییر بده ببین درست نمی شه؟

r4hgozar
دوشنبه 09 آذر 1394, 11:16 صبح
واقعا ممنون دوست عزیز.
sql managment من هم همینه. چرا به ذهن خودم نرسیده بود.
باز هم شما به داد من رسیدی.
واقعا ممنون

mirzamahmoud
دوشنبه 14 دی 1394, 21:48 عصر
از دوستان برنامه نویس کسی هست درباره بکاپ smo کمکی کنه
138192

private void btnBacup_Click(object sender, EventArgs e)
{
{
ServerConnection srvConn = new ServerConnection(conBackup);
Server srvr = new Server(srvConn);

if (srvr != null)
{
try
{
Backup backupdb = new Backup();
backupdb.Action = BackupActionType.Database;
backupdb.Database = "KaryabiDB";
SaveFileDialog savefd = new SaveFileDialog();
savefd.Filter = "Backup File (*.Bak)|*.Bak";
savefd.FileName = DateTime.Now.ToString("yyyyMMdd_HHmmss");
Nullable<bool> result = Convert.ToBoolean(savefd.ShowDialog());
if (result == true)
{
BackupDeviceItem bkpDevice = new BackupDeviceItem(savefd.FileName, DeviceType.File);
backupdb.Devices.Add(bkpDevice);
backupdb.SqlBackup(srvr);

for (int i = 0; i < 100; i++)
{
progressBar1.Value = i;
progressBar1.Text = "در حال پشتیبان گیری";

}
MessageBox.Show("عملیات پتشبان گیر یا موفقیت انجام شد", "Backup Successully", MessageBoxButtons.OK, MessageBoxIcon.Information);
progressBar1.Value = 0;
progressBar1.Text = "";

}
}
catch
{
MessageBox.Show("خطا در پشتیبان گیری", "Fail Backup", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

}



ارور من موقع بک آپ گرفتن به روش smo هست
An unhandled exception of type ‘Microsoft.SqlServer.Management.Smo.FailedOperat ionException’ occurred in PresentationFramework.dll
فقط حین backupگیری Error میدهد
شکل کامل این دستور و خط را توضیح میدید بایدکه به جای savefd.FileName از [مسیر کامل Backup + نام فایلBackup + پسوند فایل Backup که(.BAK)] مسیر رو گم کردم