gpt4 book ai didi

C# 网络服务 : Throw exception with extra properties in JSON

转载 作者:行者123 更新时间:2023-11-30 16:34:45 24 4
gpt4 key购买 nike

我有一个用 C# 编写的网络服务。当服务器发生错误时,我想通知用户客户端。这可以通过在服务器端抛出异常来正常工作,然后将其发送到我的错误处理程序客户端。

但是,当我抛出异常时,我想设置一个属性来描述我认为此时错误的严重程度。因此我可以决定客户端如何显示错误:

WebService.Method(some_value, handle_response, handle_error);

function handle_response (response) {
//Do something...
}

function handle_error (error) {
if(error.level === 'Critical') {
//Show critical message.
} else if(error.level === 'Warning') {
//Show warning message.
} else
...
}
}

到目前为止,我的解决方案是创建一个继承自 System.Exception 的自定义异常。我的网络服务返回一个 JSON 格式的结果。

我的问题是如何让我的属性通过客户端 JSON 响应?

最佳答案

网络服务:

public Response zzz() {
Response result;
try {
...
} catch (MyException) {
result.HasError = true;
result.Error.Level = Normal;
result.Error.Message = "It's OK.";
} catch (Exception) {
result.HasError = true;
result.Error.Level = Critical;
result.Error.Message = "!!!!";
}
}

然后检查Response.HasError

关于C# 网络服务 : Throw exception with extra properties in JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2341410/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com