在 Visual Studio 2005 中发布网站时可以排除文件夹或文件吗?我想在解决方案资源管理器中保留各种资源,例如各种环境的备用配置文件,但我真的不想将它们发布到服务器。有什么办法可以排除它们吗?使用其他项目类型(例如 .dll 程序集)时,我可以将文件的“生成操作”属性设置为“无”,并将其“复制到输出目录”属性设置为“不复制”。我在网站中找不到任何类似的文件设置。
如果 IDE 不提供此功能,是否有人有处理此类文件的好技术?
最佳答案
通过将 ExcludeFilesFromDeployment
和 ExcludeFoldersFromDeployment
元素添加到项目文件(.csproj、.vbproj 等)中来排除文件和文件夹。您需要在文本编辑器中编辑该文件,或者在 Visual Studio 中通过卸载项目然后进行编辑来编辑该文件。
在适当的PropertyGroup
(调试、发布等)内的任意位置添加标记,如下所示:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
...
<ExcludeFilesFromDeployment>File1.aspx;Folder2\File2.aspx</ExcludeFilesFromDeployment>
<ExcludeFilesFromDeployment>**\.svn\**\*.*</ExcludeFilesFromDeployment>
<ExcludeFoldersFromDeployment>Folder1;Folder2\Folder2a</ExcludeFoldersFromDeployment>
</PropertyGroup>
支持通配符。
解释上面的例子:
- 第一个
ExcludeFilesFromDeployment
排除File1.aspx
(位于项目根目录中)和Folder2\File2.aspx
(Folder2
) code> 位于项目的根目录中) - 第二个
ExcludeFilesFromDeployment
排除任何名为.svn
的文件夹及其任何子文件夹中的所有文件 ExcludeFoldersFromDeployment
排除名为Folder1
的文件夹(位于项目根目录中)和Folder2\Folder2a
(Folder2
是在项目的根目录中)
有关详细信息,请参阅 MSDN 博客文章 Web Deployment: Excluding Files and Folders via the Web Application’s Project File
关于visual-studio - 排除在 Visual Studio 中发布的网站中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/650875/