自定义条件编译符号
Custom conditional compilation symbols
我目前正在努力使用自定义配置。
我的解决方案有一个 .NET 标准库和另外两个使用该库的项目(一个用于 Windows,一个用于 Android)。
我尝试做的是为库提供编译器常量 WINDOWS 和 MOBILE。
我就是这样试了几次的:
创建两个新配置WindowsDE 和MobileDE,从调试配置中复制设置并创建新的项目配置。在一些尝试中,我还删除了默认的调试配置,但这没有帮助
库的属性->构建,选择WindowsDE并将WINDOWS放入Conditional compilation symbols字段然后选择MobileDE并将ANDROID放入其中。
我正在通过调用库中的方法对其进行测试:
#if WINDOWS
System.Diagnostics.Debug.WriteLine("Windows");
#endif
#if ANDROID
System.Diagnostics.Debug.WriteLine("Android");
#endif
但这根本不起作用。也只是使用
System.Diagnostics.Debug.WriteLine("anything");
没有任何 #if 不打印并且在一些尝试中我什至无法再调试库。
在此方面如有任何帮助,我们将不胜感激
您可以在项目属性中定义条件编译常量
#if WINDOWS
System.Diagnostics.Debug.WriteLine("Windows"); // NOT printed!
#endif
#if ANDROID
System.Diagnostics.Debug.WriteLine("Android"); // Printed!
#endif
您可以输入多个以分号分隔的符号。不要将它们设置为 true
或 false
。列出的是 true
。缺少的自动false
.
如果两者均未打印,则解决方案可能无法编译,您是 运行 旧代码。尝试重建解决方案。
我目前正在努力使用自定义配置。 我的解决方案有一个 .NET 标准库和另外两个使用该库的项目(一个用于 Windows,一个用于 Android)。
我尝试做的是为库提供编译器常量 WINDOWS 和 MOBILE。
我就是这样试了几次的:
创建两个新配置WindowsDE 和MobileDE,从调试配置中复制设置并创建新的项目配置。在一些尝试中,我还删除了默认的调试配置,但这没有帮助
库的属性->构建,选择WindowsDE并将WINDOWS放入Conditional compilation symbols字段然后选择MobileDE并将ANDROID放入其中。
我正在通过调用库中的方法对其进行测试:
#if WINDOWS
System.Diagnostics.Debug.WriteLine("Windows");
#endif
#if ANDROID
System.Diagnostics.Debug.WriteLine("Android");
#endif
但这根本不起作用。也只是使用
System.Diagnostics.Debug.WriteLine("anything");
没有任何 #if 不打印并且在一些尝试中我什至无法再调试库。
在此方面如有任何帮助,我们将不胜感激
您可以在项目属性中定义条件编译常量
#if WINDOWS
System.Diagnostics.Debug.WriteLine("Windows"); // NOT printed!
#endif
#if ANDROID
System.Diagnostics.Debug.WriteLine("Android"); // Printed!
#endif
您可以输入多个以分号分隔的符号。不要将它们设置为 true
或 false
。列出的是 true
。缺少的自动false
.
如果两者均未打印,则解决方案可能无法编译,您是 运行 旧代码。尝试重建解决方案。