Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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 Web应用程序部署方法最佳实践_C#_Asp.net_.net_Visual Studio_Visual Studio 2012 - Fatal编程技术网

C# ASP.NET Web应用程序部署方法最佳实践

C# ASP.NET Web应用程序部署方法最佳实践,c#,asp.net,.net,visual-studio,visual-studio-2012,C#,Asp.net,.net,Visual Studio,Visual Studio 2012,有一个关于部署方法的快速问题 我习惯于在Visual Studio中使用C#for ASP.net编程一个站点,然后保存和构建它,然后将Visual Studio项目文件夹的全部内容复制到托管该站点的协调IIS文件夹中,每次我对该站点进行更改并需要更新它时,但是必须有一种更好更有效的方法来部署Visual Studio中的网站或应用程序来更新您的网站 是否有人对Visual Studio中用于部署编程站点的部署技术或内置工具有任何建议。任何建议都是有用的 您可以查看Visual Studio的功

有一个关于部署方法的快速问题

我习惯于在Visual Studio中使用C#for ASP.net编程一个站点,然后保存和构建它,然后将Visual Studio项目文件夹的全部内容复制到托管该站点的协调IIS文件夹中,每次我对该站点进行更改并需要更新它时,但是必须有一种更好更有效的方法来部署Visual Studio中的网站或应用程序来更新您的网站


是否有人对Visual Studio中用于部署编程站点的部署技术或内置工具有任何建议。任何建议都是有用的

您可以查看Visual Studio的功能。这将工作,如果它只是一个小网站,只有你在它的工作。如果事情变得更大、更复杂,您可能希望它看起来像其他东西。

您可以使用MSBuild社区。您还可以使用另一个。

查看项目属性包/发布web。另外,右键单击“项目发布”。而且,这也没什么问题。这就是在测试服务器上进行部署的方式—我们将目录集复制到配置的虚拟目录中。您可以使用批处理脚本在项目生成后事件中为您执行此操作。您的方式没有问题即使有多人在处理一个web应用程序,发布对于将您的更改发布到本地网站仍然很有用,并且在连续集成构建结束时,在签入源代码管理后部署组合的更改也很有用。我确实说过“可能想要查看”—)取决于生成的复杂程度以及您需要的灵活性。我很少看到生成如此复杂以至于MSBUILD无法生成它,而不是如此复杂以至于无法使用Visual Studio中的“发布”。你知道Publish不只是复制周围的文件,对吗?它几乎是这样的,如果你的项目中有不需要的文件,这些文件将不会被复制。此外,如果您对dev/qa/prod使用单独的配置文件,这也会增加复杂性。是的,Publish处理app.config.prod或其他内容,但仅Publish处理这些内容。我也没有访问生产数据库密码的权限,Publish不会将这些值交换到配置文件中。所以是的,MSBUILD应该能够构建它,但这就是CruiseControl之类的东西用来构建的。当您准备推送时,您可能需要一些beefier.Web.config转换处理更改的连接字符串,这些字符串允许加密,以便可以存储在转换文件中。如果您需要在构建时完成转换,慢猎豹可以处理。您可以使用发布配置文件安排包含额外文件或排除特定文件,如果您想了解这些内容,请继续询问。