C# Visual Studio WSDL创建异步/等待SOAP Web服务

C# Visual Studio WSDL创建异步/等待SOAP Web服务,c#,web-services,soap,async-await,C#,Web Services,Soap,Async Await,我的C#winforms应用程序中有一个SOAP Web服务,但我正在尝试使用基于任务的异步/等待方法生成WSDL.exe 我已经阅读了文档,并尝试将以下XML文件添加到par开关中,但它仍然没有为我提供异步调用webservice方法的基于任务的方法 // BEGIN WSDLPARAMETERS.XML <wsdlParameters xmlns="http://microsoft.com/webReference/"> <webReferenceOptions&g

我的C#winforms应用程序中有一个SOAP Web服务,但我正在尝试使用基于任务的异步/等待方法生成WSDL.exe

我已经阅读了文档,并尝试将以下XML文件添加到
par
开关中,但它仍然没有为我提供异步调用webservice方法的基于任务的方法

// BEGIN WSDLPARAMETERS.XML

<wsdlParameters  xmlns="http://microsoft.com/webReference/">
  <webReferenceOptions>
    <verbose>false</verbose>
    <codeGenerationOptions>properties newAsync enableDataBinding</codeGenerationOptions>
  </webReferenceOptions>
</wsdlParameters>

// END WSDLPARAMETERS.XML

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>wsdl.exe  "http://********/interchangeservices.asmx" /out:"****\WebServices.cs" /l:CS  /n:"AdelaideInterchangeAutomation" /par:"*****\wsdlparameters.xml"

我可以通过在Visual Studio中通过
添加连接的服务
创建文件来解决这个问题

高级
菜单下,有一个生成基于任务的异步方法的选项


你得到了什么?您是否尝试将
verbose
设置为
true
?@PauloMorgado我已更新问题,请检查。是的,我已经尝试将
verbose
设置为
true
false
    /// <remarks/>

    public AwaitingUpload CheckHistoryNotUploaded() {
        object[] results = this.Invoke("CheckHistoryNotUploaded", new object[0]);
        return ((AwaitingUpload)(results[0]));
    }

    /// <remarks/>
    public void CheckHistoryNotUploadedAsync() {
        this.CheckHistoryNotUploadedAsync(null);
    }

    /// <remarks/>
    public void CheckHistoryNotUploadedAsync(object userState) {
        if ((this.CheckHistoryNotUploadedOperationCompleted == null)) {
            this.CheckHistoryNotUploadedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCheckHistoryNotUploadedOperationCompleted);
        }
        this.InvokeAsync("CheckHistoryNotUploaded", new object[0], this.CheckHistoryNotUploadedOperationCompleted, userState);
    }

    private void OnCheckHistoryNotUploadedOperationCompleted(object arg) {
        if ((this.CheckHistoryNotUploadedCompleted != null)) {
            System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
            this.CheckHistoryNotUploadedCompleted(this, new CheckHistoryNotUploadedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
        }
    }
    public AwaitingUpload CheckHistoryNotUploaded() {
        object[] results = this.Invoke("CheckHistoryNotUploaded", new object[0]);
        return ((AwaitingUpload)(results[0]));
    }

    /// <remarks/>
    public async Task<AwaitingUpload> CheckHistoryNotUploadedAsync() {
        await .....
    }