Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.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#Web服务部署版本回滚/删除_C#_Web Services_Version Control_Deployment - Fatal编程技术网

C#Web服务部署版本回滚/删除

C#Web服务部署版本回滚/删除,c#,web-services,version-control,deployment,C#,Web Services,Version Control,Deployment,好的,如果这已经被问到和/或回答了,我表示歉意,但我正在努力找到我正在调查的问题的正确情况,因为很难找到正确的术语 我的任务是为我们的部署寻找一个回滚解决方案,如果出于任何原因我们发布了一个不成功的版本。除了严格构建我们的源代码管理,如果发布失败,从SVN获取以前的版本并重新发布到Live Server之外,还有更好的快速解决方案吗 是否有任何快速且合适的方法可以回滚到以前发布的版本? 我目前主要关注Web服务,因为这些服务都是面向前端的,任何问题都可能会给客户带来问题,需要尽快解决 请不要犹豫

好的,如果这已经被问到和/或回答了,我表示歉意,但我正在努力找到我正在调查的问题的正确情况,因为很难找到正确的术语

我的任务是为我们的部署寻找一个回滚解决方案,如果出于任何原因我们发布了一个不成功的版本。除了严格构建我们的源代码管理,如果发布失败,从SVN获取以前的版本并重新发布到Live Server之外,还有更好的快速解决方案吗

是否有任何快速且合适的方法可以回滚到以前发布的版本? 我目前主要关注Web服务,因为这些服务都是面向前端的,任何问题都可能会给客户带来问题,需要尽快解决

请不要犹豫,提供任何建议和意见,因为我渴望听到任何和所有的想法


提前谢谢

我总是为我的WCF服务创建一个安装程序。我只能假设这将适用于ASMX服务


如果您以前没有创建过安装程序,则会有一个学习曲线。我只是瞥了一眼,但它看起来和我所做的非常接近。让我知道你的想法。

只是一个想法,但是你考虑过同时运行版本吗

IE:您在不同的URL下部署新版本,然后让客户在分阶段的过程中切换到此版本

这允许您以更精细的方式控制交换机,而不是全有或全无步骤。这还意味着,如果您的web服务接口发生了更改,则使用旧版本客户端的客户可以继续使用旧版本


如果您还部署了依赖于服务的客户端软件,那么您可能希望在升级客户端之前,让旧客户端在旧版本上工作。

为什么不将旧目录复制到备份目录中呢。 如果部署失败,请将其从备份目录复制回来。
使用小批量脚本或nant可以轻松完成,以获得更好的配置可能性。我考虑过这一点,但不确定这是否会导致IIS的复杂性,因为即使添加文件/重命名和替换文件也会导致复杂性。我将对此进行进一步研究。目前还没有复杂的问题。唯一需要注意的是目录授权,在复制后必须重新应用。在进行了一些广泛的测试之后,这似乎可以有效地工作,没有故障。如果我遇到任何问题,我会更新这个。