代码检查:CallerMemberNameAttribute 将不起作用;它被 CallerLineNumberAttribute 覆盖
该检查会报告同时标记有 [CallerMemberName] 和 [CallerLineNumber] 的参数。 [CallerLineNumber] 覆盖了同一参数上的 [CallerMemberName] ,因此成员名属性将不起作用,只会让代码产生误导。
示例
using System.Runtime.CompilerServices;
void Log([CallerMemberName, CallerLineNumber] object info = null)
{
}
using System.Runtime.CompilerServices;
void Log([CallerLineNumber] object info = null)
{
}
修正方法
没有专门的快速修复。 常见的修复方法是移除被重写的属性。
2026年 5月 8日