编译器错误 CS1501

“method”方法的重载不带有“number”个参数

对类方法进行了调用,但没有一种形式的方法带有所需数目的参数。

如果正在调用所引用程序集中类上的方法,并且该方法在它的一个或多个参数上有默认值,则会发生 CS1501。 C# 不能使您创建参数上带有默认值的方法,但另一种面向运行时的语言可以。 如果参数(在所引用程序集的方法中)有默认值,您仍然必须调用方法并显式传递所有参数。

示例

下面的示例生成 CS1501。

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            ExampleClass ec = new ExampleClass();
            ec.ExampleMethod();
            ec.ExampleMethod(10);
            // The following line causes compiler error CS1501 because 
            // ExampleClass does not contain an ExampleMethod that takes
            // two arguments.
            ec.ExampleMethod(10, 20);
        }
    }

    // ExampleClass defines two methods, one that has no parameters and
    // one that has a single parameter.
    class ExampleClass
    {
        public void ExampleMethod()
        {
            Console.WriteLine("Zero parameters");
        }

        public void ExampleMethod(int i)
        {
            Console.WriteLine("One integer parameter.");
        }
    }
}