【问题标题】:Find all optional parameters and remove them查找所有可选参数并将其删除
【发布时间】:2010-08-25 12:02:37
【问题描述】:

在一些类中使用了可选参数后,我开始非常不喜欢它们,因为它们在某些情况下通过重载解决方案引起的麻烦,即由于签名冲突而难以将委托绑定到它们,以及关于方法参数计数的动态调用问题。

如何在我的 Visual Studio IDE (2010) 项目中搜索所有文件并找到所有可选参数用法?也许我可以使用一个聪明的正则表达式吗?或者可能使用不支持可选参数的旧版 Visual Studio?我试图避免在项目中手动扫描文件的麻烦,因为它可能令人厌烦且容易出错。谢谢!

【问题讨论】:

    标签: visual-studio visual-studio-2010 c#-4.0 optional-parameters


    【解决方案1】:

    你最好的选择可能是反射——它应该很容易遍历所有类型的所有成员,其中它们是方法并且它们至少有一个可选参数。

    这不会代替您,但可以为您提供所有违规成员的列表。

    类似:

    foreach (Type tp in currentAssembly.GetTypes())
        foreach (MethodInfo func in tp.GetMethods())
            if(func.GetParameters().Any(p=>p.IsOptional))
                Console.WriteLine(func.ToString());
    

    【讨论】:

      【解决方案2】:

      虽然这可能不是我倾向于在 Visual Studio 中查看类视图的最佳方式。方括号中显示的类型是可选参数

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-11-01
        • 1970-01-01
        • 2014-10-17
        • 1970-01-01
        • 1970-01-01
        • 2012-06-20
        • 1970-01-01
        • 2015-07-03
        相关资源
        最近更新 更多