是否存在类似的条件不存在属性,或者是否可以使用条件属性仅包含方法,如果该符号未定义?
我正在寻找的东西是这样的:
[Conditional("!SILVERLIGHT")]
private void DoStuffThatSilverlightCant() {...}
如果符号SILVERLIGHT
确实存在,则不会包含该方法。
我不想使用简单#ifdef
的原因是我可以利用编译器删除调用语句,而不必将每个单独的调用包装在#ifdef
中。
答案 0 :(得分:8)
更新: 以下代码段仅在#if存在于每个不太实用的调用文件中时才有效。
#if !SILVERLIGHT
#define NOT_SILVERLIGHT
#endif
[Conditional("NOT_SILVERLIGHT")]
private void DoStuffThatSilverlightCant() {...}
然而,可以做的是为您正在使用的任何平台构建配置/定义所需的符号(在这种情况下为NOT_SILVERLIGHT)。