Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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
WCF自动部署_Wcf_Continuous Integration_Cruisecontrol.net - Fatal编程技术网

WCF自动部署

WCF自动部署,wcf,continuous-integration,cruisecontrol.net,Wcf,Continuous Integration,Cruisecontrol.net,我正在设置一些IIS托管的WCF项目以进行持续集成,我一直在努力寻找实现部署自动化的最佳和最简单的方法 现在,我使用CC.NET、MSBUILD和一个批处理文件来构建和部署,该批处理文件将必要的文件复制到部署文件夹中,但我认为一定有更好的方法 理想情况下,我希望类似于web部署项目的东西,但是对于WCF 我愿意用一个漂亮的powershell脚本来复制所有必要的文件并排除所有的漏洞。这在很大程度上取决于您使用的技术。在上一个项目中,我们使用了TFS和团队构建。结果是,WCF项目被构建到与其部署结

我正在设置一些IIS托管的WCF项目以进行持续集成,我一直在努力寻找实现部署自动化的最佳和最简单的方法

现在,我使用CC.NET、MSBUILD和一个批处理文件来构建和部署,该批处理文件将必要的文件复制到部署文件夹中,但我认为一定有更好的方法

理想情况下,我希望类似于web部署项目的东西,但是对于WCF


我愿意用一个漂亮的powershell脚本来复制所有必要的文件并排除所有的漏洞。

这在很大程度上取决于您使用的技术。在上一个项目中,我们使用了TFS和团队构建。结果是,WCF项目被构建到与其部署结构相匹配的文件夹结构中。MSBUILD脚本中的其他任务触发了部署脚本(我认为是用PERL编写的)。它负责所有部署任务,从删除旧文件夹、创建新文件夹、创建数据库和填充引用数据,到部署服务和网站,最后运行安装验证脚本并将结果发布到网站


另一方面,如果你只有一把锤子,那就把锤子扔掉。

好吧,没有什么能阻止你使用web部署项目来托管你的WCF类库。SVC文件将由IIS拾取并适当路由。我们使用一个标准的部署项目和一个自定义操作来创建iisvroot,这样我们就可以更好地控制设置,但是标准的web部署项目也可以完成这项工作

除非您是在IIS7下运行,否则就IIS而言,它只是具有自己处理程序的标准内容。当您进入Windows 2008/Windows 7 Beta版时,情况可能会发生一些变化,因为这些版本具有非常不同的处理程序模型


我发现这篇文章非常有用:

你使用的是什么托管方法?IIS托管。我已经修改了这个问题以包含这些信息。所以,基本上你使用了一个批处理文件。这可能就是我们所坚持的。不,我们使用了MSBUILD和PERL脚本。当你有像样的PERL编程结构时,完成复杂的任务会容易一些。由于某种原因,我无法在我的计算机上添加一个带有WCF的web部署项目。结果我需要重新安装。非常感谢。