Conditional
特性简介
Conditional
特性允许我们包括或排斥特定方法的所有调用。为方法声明应用
Conditional
特性并把编译符作为参数来使用。
- 如果定义了编译符号,那么编译器会包含所有调用这个方法的代码,这和普通方法没有区别。
- 如果没有定义编译符号,那么编译器会忽略代码中这个方法的所有调用。
Conditional 代码示例
以下示例定义了一个
SayHello()
方法,并应用了
Conditional
特性,编译符号为
Do
。并在第一行定义了编译符号
#define Do
#define Do//此处定义了编译符号 Do
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
namespace AttributeDemo
{
class Program
{
static void Main(string[] args)
{
SayHello();//此处调用应用了 Conditional 特性的方法
Console.WriteLine("hangzhou");
Console.ReadKey();
}
[Conditional("Do")]
static void SayHello()
{
Console.WriteLine("hello");
}
}
}
输出
hello
hangzhou
取消第一行定义的编译符号
//此处取消编译符号 Do 的定义
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
namespace AttributeDemo
{
class Program
{
static void Main(string[] args)
{
SayHello();
Console.WriteLine("hangzhou");
Console.ReadKey();
}
[Conditional("Do")]
static void SayHello()
{
Console.WriteLine("hello");
}
}
}
输出
hangzhou