首页 > 代码库 > Conditional特性用法
Conditional特性用法
说明:根据预处理标识符执行方法。Conditional 特性是 ConditionalAttribute 的别名,可应用于方法或属性类。相对于#if和#endif,更灵活更简洁和不易出错。
例如:
#define CONDITIONAusing System;using System.Collections.Generic;using System.Diagnostics;namespace ConsoleApplication2{ class Program { static void Main(string[] args) { Test1(); Test2(); Console.ReadKey(); } [Conditional("CONDITIONA")] public static void Test1() { Console.WriteLine("Test1"); } public static void Test2() { Console.WriteLine("Test2"); } }}
这时Test1和Test2都将被执行,如果注释掉#define CONDITIONA,Test1将不会被执行。
也可以同时定义多个Conditional特性,这时多个特性之间的关系为或:
class Program { static void Main(string[] args) { Test1(); Test2(); Console.ReadKey(); } [Conditional("CONDITIONA"), Conditional("CONDITIONB")] public static void Test1() { Console.WriteLine("Test1"); } public static void Test2() { Console.WriteLine("Test2"); } }
如果要获得逻辑与效果,需要将所需执行代码全部放到Test2中执行:
class Program { static void Main(string[] args) { Test1(); Console.ReadKey(); } [Conditional("CONDITIONA")] public static void Test1() { Test2(); } [Conditional("CONDITIONB")] public static void Test2() { Console.WriteLine("Test1"); Console.WriteLine("Test2"); } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。