C#:如果在特定的操作系统上构建,是否有一种方法只在构建中包含一个项目

本文关键字:构建 一种 方法 项目 包含一 是否 如果 操作系统 | 更新日期: 2023-09-27 18:00:16

我有一个简单的应用程序,它使用Gtk#作为接口在linux上运行。我想制作一个使用Wpf作为接口的Windows端口。

所有Gtk接口代码都在一个单独的项目中,因此编写代码应该相对简单。然而,该解决方案仍将包含Gtk接口项目,其中包含对我不想在Windows端口中依赖的程序集的所有引用

有没有办法让编译器在Windows上编译时完全忽略编译Gtk程序集(可能是在设置了特定的编译器标志时)?

我在Ubuntu 11.04上使用MonoDevelop,在Windows 7上使用Visual Studio 2010。

C#:如果在特定的操作系统上构建,是否有一种方法只在构建中包含一个项目

您可以使用配置管理器将自定义平台添加到不构建gtk接口项目的解决方案中(您不想将其添加到项目中-不起作用)。

至于对该项目的引用,我相信这个线程描述了如何根据配置排除这些引用。从本质上讲,您可以像在旧样式(VS'08及更早版本)MSBuild.proj文件中一样,向ProjectReference元素添加一个条件。

相关文章: