如何让 Visual Studio 编译器忽略文件?

问题描述 投票:0回答:4

有人知道有一种方法可以让 Visual Studio 在编译时完全忽略文件吗? 我有一个 C# 解决方案,其中有一个 foo.config 文件,该文件并不是真正的标准配置文件 - 它只是一个文本文件。 在编译过程中,VS 会抓取文件并进行轰炸。

我希望它就像一个文本文件一样。 我无法选择更改文件名。

编辑:请注意,BuildAction 不会排除编译器检查文件的文件。 它只是决定文件是否被编译到程序集中,是否是内容(如 jpg 或其他内容),或者是否是资源文件。 有关更多信息:请参阅 MSDN 页面

EDIT2:显然,如果你有一个名为 foo.config 的文本文件,并且在构建时打开它,VS2005 会弹出一个错误,认为该文件应该是 xml。 但是,如果你关闭该文件,VS2005将忽略它。

解决方案:如果在构建期间打开不合规的文件,Visual Studio 验证会导致错误。 有关如何关闭此功能的示例(对于 HTML),请参阅Scott Guthrie 的帖子。 正如艾伦提到的,您还应该将“构建操作”设置为“无”。 不幸的是,如果您打开文件,这不会阻止构建错误。

visual-studio config configuration-files
4个回答
25
投票

右键单击>属性

构建操作:设置为“无”

编辑:如果您正在谈论 app.config,您真的不能弄乱它的格式,您需要将其放在不同的 .config 文件中。

我刚刚仔细检查过,VS.net 不在乎,只要它不是 app.config 或 web.config 并且配置文件构建操作设置为“无”,如果您打开文件,它会“错误”,但它会不会导致构建失败或阻止其构建程序集。

关闭文件,错误就会消失,类似于 HTML 标记的错误。 这些“错误”的显示可能是 vs.net 中的可配置设置


5
投票

要采取的操作取决于解决方案和文件类型。 例如(在 VS2005 中),在 C++ 解决方案中,我可以右键单击解决方案资源管理器中的源文件名并查看其属性。 第一个“常规”选项是“从构建中排除”,它允许您从构建过程中排除该文件,而无需将其完全从项目中排除。

我在 C# 解决方案中提取了一个 .config 文件,并在“高级”部分下找到了“构建操作”选项。 这可能应该设置为“无”。


2
投票

只需右键单击该文件并选择“从项目中排除”。

如果您仍想在项目中看到它,请选择该项目并单击解决方案资源管理器顶部的“显示所有文件”按钮。 这将显示目录树中的所有文件,即使它们实际上不是项目的一部分。


1
投票

你确定VS编译.config文件吗???

您应该在文件选项中检查它的“构建操作”,并且可以将其设置为“无”。

© www.soinside.com 2019 - 2024. All rights reserved.