部署时过滤ASP.NET Web应用程序的文件

时间:2020-03-06 14:56:55  来源:igfitidea点击:

我想部署我的Web应用程序(asp.net mvc),并且需要从项目中删除所有代码隐藏文件。

你们知道要执行此操作的任何脚本吗?

我更喜欢使用脚本,因为我可以根据需要进行调整。

解决方案

只需在项目上选择"发布网站"选项,它就可以解决这一问题(如果使用vs)。

菜单建立/发布网站

在Visual Sudio中,右键单击项目,然后在出现的对话框中选择"发布...",选择"仅需要文件,即可运行该应用程序"。

发布向导会将所有代码隐藏文件编译到程序集中,并删除它们以进行发布。

我建议使用Web部署项目。这将编译网站,并将部署所需的所有文件复制到新文件夹中(没有代码隐藏文件,因为它们不需要部署)。我们还可以通过这种方式获得更多控制,因为我们可以设置构建前和构建后事件。

例如,我在Web部署项目上设置了一个构建后事件,以执行一个批处理文件,该批处理文件将一些文件复制到Debug / Release文件夹中,然后将其压缩,以准备通过FTP传输到生产服务器。

首先,不建议将代码隐藏文件用于ASP.NET MVC。 Codebehind是用于ASP.NET标准文件的控制器,但是在ASP.NET MVC中,我们拥有更强大的控制器。

其次,为什么需要删除代码隐藏文件? IIS / MVC / Web.config应该注意确保* .cs等文件不被提供并导致404.