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

时间:2009-03-05 14:44:02

标签: visual-studio compiler-construction configuration-files config

是否有人知道在编译时使visual studio完全忽略文件的方法?我有一个C#解决方案,它有一个foo.config文件,它实际上不是一个标准的配置文件 - 它只是一个文本文件。在编译期间,VS抓住了文件和炸弹。

我希望它好像只是一个文本文件。我没有更改文件名称的选项。

编辑:请注意,BuildAction不会从编译器中排除检查它们的文件。它只是决定文件是否被编译到程序集中,是否是内容(如jpg或其他东西),或者它是否是资源文件。有关详细信息:see the MSDN page

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

解决方案:如果在构建期间打开了不合规的文件,Visual Studio验证会导致错误。有关如何关闭此功能的示例(对于HTML),请参阅Scott Guthrie's post。正如艾伦提到的,你也应该将Build Action转为“None”。不幸的是,如果您打开文件,这不会停止构建错误。

4 个答案:

答案 0 :(得分:23)

右键单击>特性

构建动作:设置为“无”

编辑:如果你在谈论app.config,你真的不知道它的格式,你需要把它放在一个不同的.config文件中。

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

关闭文件,错误将消失,类似于您获得的HTML标记错误。显示这些“错误”可能是vs.net

中的可配置设置

答案 1 :(得分:5)

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

我在C#解决方案中提取了一个.config文件,并在Advanced部分下找到了“Build Action”选项。那可能应该设置为“无”。

答案 2 :(得分:2)

右键单击该文件,然后选择“从项目中排除”。

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

答案 3 :(得分:1)

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

您应该在文件选项中检查它的Build Action,并且可以将其设置为none。