2016-06-08 180 views
-1

我需要备份我的数据库,我想将该文件作为下载文件。只需从任何网站获取某种文件,即可下载。我想备份我的数据库而不需要设置目录。ASP.net MVC数据库备份

sqlcmd = new SqlCommand("backup database test to disk='" + backupDIR + "\\" + DateTime.Now.ToString("ddMMyyyy_HHmmss") + ".Bak'", con); 

在这个编码中它设置了一个备份目录。我想通过浏览器将该文件作为下载文件获取。
这是如何实现的?

+0

请说明您的具体问题或添加额外的细节,突显正是你需要的。 – abarisone

回答

0

试试这个

public FileResult Download() 
    { 
     byte[] fileBytes = System.IO.File.ReadAllBytes(@"c:\folder\myfile.ext"); 
     string fileName = "myfile.ext"; 
     return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName); 
    } 

here

+0

其实我不工作。我不知道这是为什么。我创建了.bak文件。我也使用你的代码。但没什么。 –

+0

嗨,你是否替换文件的当前位置@“c:\ folder \ myfile.ext”?我也推荐你使用相对路径。 你是如何从视图中调用该方法的? 我强烈建议您阅读本文,http://rachelappel.com/upload-and-download-files-using-asp-net-mvc/。它会澄清它。 – DanielGatti

+0

嗨,请检查这个代码。我添加了这个代码。但它不起作用。我不知道这是为什么?我把该代码作为答案 –

0
public ActionResult Backup() 
    { 
     BackupDB db = new BackupDB(); 

     if (db.BackupDatabase()) 
     { 
      ViewData["Success"] = "Backup is completed Successfully"; 
      Download("09062016_200840.Bak"); 
      return View("AdminIndex"); 
     } 

     ViewData["Exception"] = "Backup Failed"; 
     return View("AdminIndex"); 

    } 
    public FileResult Download(string ImageName) 
    { 
     return File("‪C:\\Backups" + ImageName,System.Net.Mime.MediaTypeNames.Application.Octet); 
    } 
+0

首先,它没有斜线。 它正在搜索文件在C:\\ Backups09062016_200840.Bak我认为你正在看它在C:\\备份\\ 09062016_200840.Bak 请阅读此http://rachelappel.com/upload-and-download- files-using-asp-net-mvc /它会帮助你很多 – DanielGatti