代码之家  ›  专栏  ›  技术社区  ›  Lee

.NET反射和“params”关键字

  •  10
  • Lee  · 技术社区  · 16 年前

    在.NET中,是否有一种方法使用反射来确定方法上的参数是否标记有“params”关键字?

    2 回复  |  直到 8 年前
        1
  •  17
  •   Jon Skeet    16 年前

    测试看是否最终 ParameterInfo ParamArrayAttribute 应用于此。

        2
  •  22
  •   Nathan Baulch    8 年前

    检查是否 ParamArrayAttribute 已应用于 ParameterInfo 对象:

    //use string.Format(str, args) as a test
    var method = typeof(string).GetMethod("Format", new[] {typeof(string), typeof(object[])});
    var param = method.GetParameters()[1];
    Console.WriteLine(Attribute.IsDefined(param, typeof(ParamArrayAttribute)));
    
    推荐文章