发布ASP.NET与复制文件

4
我想确定不发布ASP.NET解决方案是否存在任何可能的问题。
在我的公司当前政策中(奇怪的是),他们只是复制Web项目dll,所需的参考dll,web.config和global.ASAX和图像文件到IIS Web服务器上现有的文件夹中(创建虚拟目录)。
你认为上述做法有什么问题吗?
非常感谢您的反馈。

1
我觉得这个问题可能不太适合在stackoverflow上发问,但是除了人为错误的因素外,我并没有看到其他的问题:你肯定会忘记一些已经更改/添加的文件。 - Stephen
1
当您发布到文件系统时,出版物只是将内容发布到文件系统中。 - Jonesopolis
我不确定这是否是一个适当的SO问题,因为它有点像是一种调查/讨论问题。然而,这样做会导致灾难。我曾经在一个地方承包过,那里的政策就是这样,结果在部署时出现了一个又一个的DLL版本冲突或配置错误。 - jfrankcarr
如果DLL版本冲突,那么发布应用程序也无法解决这个问题。 - S Nash
2个回答

3

我认为这个没有什么问题。这是我们的日常工作。我们将项目发布到一个文件夹中,检查web.config是否与线上一致,然后进行打包。接着,我们会创建一个变更请求,引用打包文件并将其传递给托管团队进行部署。

虽然我们觉得这种方式很好用,但每个人的看法和情况都不同。我认为这不是技术问题,而是业务流程问题。


1
我们有一个类似的设置,除了我们通过环境来推广代码。我们的web.config文件引用了一个在Web应用程序上方的根目录的配置文件,这使我们能够拥有每个环境的单独配置。如果我们需要对它们进行更改,我们将其记录为发布的一部分,并在每个环境(DEV、STAGE和PROD)中应用这些更改。我们在本地发布项目,然后迁移到DEV。 - Nick Bork

1

过去,复制文件是不够的,因为您需要在IIS配置系统中为应用程序创建虚拟目录/应用程序。最近的IIS版本允许您完全在app.config中处理此问题,因此这不再是一个问题。


谢谢您的回答。如果Web应用程序已经部署,即虚拟目录/应用程序已经创建,那么复制文件是否仍然存在可能的问题? - S Nash

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接