Web 方法中的可选参数

Optional Parameters in Web Method

我定义了以下网络方法:

public string GetMatchingCompanies(string term, int companyPickerMode, int? officeId, int? proposalId)
{
    // ...
}

如您所见,最后两个参数可以为空。这个想法是这些参数是可选的。如果未指定,它们将为空。

但是,当我的 AJAX 代码在不提供这些参数之一的情况下调用此方法时,出现以下错误。

Invalid web service call, missing value for parameter: 'officeId'.

这是出乎意料的。有没有办法让这些参数可选?

使then 字段可为空并不意味着不需要提供它们,只是它们将被初始化或可以设置为空。如果您不想指定它们,请设置默认值,如下所示:

public string GetMatchingCompanies(string term, int companyPickerMode, int? officeId = null, int? proposalId = null)
{
    // ...
}