代码检查:CallerFilePathAttribute 将不起作用,因为它应用于在不允许可选实参的上下文中使用的成员
此检查报告 [CallerFilePath] 应用于无法获取调用者信息的地方。 一个常见情况是将特性放在部分方法的实现部分,而不是带有可选参数的定义声明上。 在该位置,特性将不起作用。
示例
using System.Runtime.CompilerServices;
partial class C
{
public partial void M(string path = "");
}
partial class C
{
public partial void M([CallerFilePath] string path)
{
}
}
using System.Runtime.CompilerServices;
partial class C
{
public partial void M([CallerFilePath] string path = "");
}
partial class C
{
public partial void M(string path)
{
}
}
快速修复
当存在另一个部分声明时,快速修复可以将特性移动到有效的声明部分。
2026年 5月 8日