我有像
这样的方法public void sample(string roll-no,string name)
{
//my code
}
并将此方法称为
sample("12us001",string.Empty);
但它显示错误为,"过载的方法有一些无效的论据。"
如何传递这个空参数???
答案 0 :(得分:1)
您不能在参数名称中使用连字符。改为
public void sample(string rollno,string name)
{
//my code
}
它有效。
如果你想传入null ...只需在调用时传入null作为参数。
sample("12us001",null)
我已添加以下内容以演示样本方法的重载版本如何工作..并且可能是错误的原因
public void sample(string rollno)
{
sample(rollno,null);
}
public void sample(string rollno,string name)
{
if (name == null)
{
//Do something here
}
}
如果传入示例方法,则可能需要处理null。
答案 1 :(得分:1)
首先让我们删除“ - ”
[ { marker: 'ft' , value: 'Some older versions read,' },
{ marker: 'fqa', value: 'And we are writing these things to you so that your joy will be complete.' },
{ marker: 'fqb', value: 'null' },
{ marker: 'f*', value: 'null' },]
有了这样的方法,我可以像这样给它一个空...
public void sample(string rollno, string name)
{
//your code
}
在这种情况下,异常是非常具体的“重载方法”意味着您可能有另一个版本的此方法......例如......
sample(null, null);
在这种情况下,上述调用可能会导致该错误。 我建议您查看重载并查看您的调用“可能”导致对方法的另一个重载的错误调用。