Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用asp.net进行一键式网站备份_C#_.net_Asp.net_Backup - Fatal编程技术网

C# 使用asp.net进行一键式网站备份

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上,然后下

我想定期备份我的网站,但不是通过ftp程序备份我的文件,我想要一个一键解决方案,它将复制我的所有文件,并压缩它们,允许下载。这可以用同一个网站上的asp.net来完成吗?或者我必须为此编写一个.net应用程序吗?

我认为通过这种方式,你可以做你赢得的事情

找到像这样的zip库,您只需编程创建一个zip文件,并包含基本应用程序路径HttpContext.Current.Request.PhysicalApplicationPath,包括所有路径

将这个zip创建的文件保存在tempodir上,然后下载

这是一个快速的解决方案,可能有一些问题,例如可能无法打开锁定的文件

如果您赢得了只备份数据库的机会,那么您必须采取不同的做法

希望对您有所帮助。

备份非常容易。只需给备份提供一个目录名,然后等待下载文件。甚至可以为zip设置密码。我喜欢开源解决方案

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_数据文件夹。