调用Serenity服务端点并对客户端的成功或失败做出反应

问题描述

直到最近(最后一个完整的.net SF版本之一),我都可以像下面那样调用Serenity服务端点,并对成功或失败做出反应。使用当前的.net核心(3.14.3)SF,以某种方式似乎不再可行。

我刚刚得到一个包含消息内容的对话框。我既没有收到“成功”也没有收到“错误”警报框。

enter image description here

问题:如何使用当前的SF 3.14.3做到这一点。

在完整的.net上的项目中,我的代码在这里仍然有效:

let bla1 = CountriesService.ImportCountriesFromrESTCountries(
{

},response => {
    
    alert('success');

    let message = JSON.parse(bla1.responseText);

    Q.notifySuccess(message,Q.text("Dialogs.Button.UpdateCountries.Import.Toast.Title"),options);
    this.refresh();

},{
    blockUI: true,onError: response => {


        alert('error');
        
        let errorcontent = JSON.parse(bla1.responseText);
        let message = errorcontent["Error"]["Message"]
        Q.alert(message);

        this.refresh();

    }

});

解决方法

面对同样的问题,我通过

解决了这个问题
 Q.serviceCall<Serenity.RetrieveResponse<any>>({
                    service: this.serviceUrl + '/Retrieve',request: {
                        EntityId: this.value                       
                    } as Serenity.RetrieveRequest,async: false,onSuccess: (response) => {
                        this._selectedItem = response.Entity;
                    },onError: (error) => {
                       console.log( error.Error);
                    }
                });