از این کد هم برای ریستور کردن دیتابیس استفاده می کنم

public void Execute_Restore(string BackUpPath)
{
try
{
if (MyCn.State == ConnectionState.Closed)
{
MyCn.Open();
}

//Excute SQL

SqlCommand MyCmd;

MyCmd = new SqlCommand(@" use master
RESTORE DATABASE [Toomar] from DISK ='"
+ BackUpPath +
@"' with replace ;
ALTER DATABASE [Toomar] SET MULTI_USER ", MyCn);
MyCmd.CommandTimeout = 0;
MyCmd.ExecuteNonQuery();


//-------------------------------------------------------------------------
MyCn.Close();
MyCn.Dispose();

}
catch
{
MyCn.Close();
MyCn.Dispose();
}
}