代码检查:该参数为了获得最佳性能应为常量
当传递给带有 ConstantExpected 注解的参数的实参不是编译时常量时,此检查会进行报告。 此类 API 设计用于接收编译时已知的值。 传递变量或其他非常量表达式通常会违背注解的初衷,并可能导致 API 用法错误。
与 CA1857 代码质量规则相同。
示例
using System.Diagnostics.CodeAnalysis;
class C
{
static void Log([ConstantExpected] int eventId) { }
void M()
{
int id = GetEventId();
Log(id);
}
}
using System.Diagnostics.CodeAnalysis;
class C
{
static void Log([ConstantExpected] int eventId) { }
void M()
{
Log(42);
}
}
2026年 5月 8日