如何将可选参数传递给C#中的方法?
假设我创建了一个名为Sendcommand的方法
public void SendCommand(String command,string strfilename)
{
if (command == "NLST *" ) //Listing Files from Server.
{
//code
}
else if (command == "STOR " + Path.GetFileName(uploadfilename)) //Uploading file to Server
{
//code
}
else if ...
}
现在我想在主要方法中调用此方法
Sendcommand("STOR ", filename);
Sendcommand("LIST"); // In this case i dont want to pass the second parameter
如何实现呢?
最佳答案
使用params属性:
public void SendCommand(String command, params string[] strfilename)
{
}
那么您可以这样称呼它:
SendCommand("cmd");
SendCommand("cmd", "a");
SendCommand("cmd", "b");
或者,如果您使用C#4.0,则可以使用新的可选参数功能:
public void SendCommand(String command, string strfilename=null)
{
if (strfilename!=null) ..
}
关于.net - 如何将可选参数传递给C#中的方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3360727/