C# 使用asp.net进行一键式网站备份
我想定期备份我的网站,但不是通过ftp程序备份我的文件,我想要一个一键解决方案,它将复制我的所有文件,并压缩它们,允许下载。这可以用同一个网站上的asp.net来完成吗?或者我必须为此编写一个.net应用程序吗?我认为通过这种方式,你可以做你赢得的事情 找到像这样的zip库,您只需编程创建一个zip文件,并包含基本应用程序路径HttpContext.Current.Request.PhysicalApplicationPath,包括所有路径 将这个zip创建的文件保存在tempodir上,然后下载 这是一个快速的解决方案,可能有一些问题,例如可能无法打开锁定的文件 如果您赢得了只备份数据库的机会,那么您必须采取不同的做法 希望对您有所帮助。备份非常容易。只需给备份提供一个目录名,然后等待下载文件。甚至可以为zip设置密码。我喜欢开源解决方案C# 使用asp.net进行一键式网站备份,c#,.net,asp.net,backup,C#,.net,Asp.net,Backup,我想定期备份我的网站,但不是通过ftp程序备份我的文件,我想要一个一键解决方案,它将复制我的所有文件,并压缩它们,允许下载。这可以用同一个网站上的asp.net来完成吗?或者我必须为此编写一个.net应用程序吗?我认为通过这种方式,你可以做你赢得的事情 找到像这样的zip库,您只需编程创建一个zip文件,并包含基本应用程序路径HttpContext.Current.Request.PhysicalApplicationPath,包括所有路径 将这个zip创建的文件保存在tempodir上,然后下
using Ionic.Zip;
public void btnOneClickZip_Click(Object sender, EventArgs e)
{
Response.Clear();
Response.BufferOutput = false;
string archiveName = String.Format("backup-{0}.zip",
DateTime.Now.ToString("yyyy-MM-dd-HHmmss"));
Response.ContentType = "application/zip";
Response.AddHeader("content-disposition", "filename=" + archiveName);
using (ZipFile zip = new ZipFile())
{
zip.AddDirectory(Server.MapPath("~/Assets/Upload/"),
"httpdocs/Assets/Upload");
zip.AddDirectory(Server.MapPath("~/App_Data/"), "httpdocs/App_Data");
zip.Save(Response.OutputStream);
}
Response.Close();
}
什么类型的备份,数据库备份或者站点中上传的文件(我假设用户在其中上传文件)。整个备份。是的,有一个数据库,可以是新上传的文件。像一个简单的CMS@HasanGursoy谢谢你的信息,我会试试看这个库。我给你的另一个我使用它一切就绪,工作正常,但我也会检查新的一个。但是你省略了
数据库
备份,如何进行整个备份?如果你的sql在同一台服务器上,你可以将sql备份到同一个app_数据文件夹。