在C#中,使用AJAX技术时,我们可以自定义错误码来表示不同的异常情况。这样,在客户端接收到服务器返回的错误码后,可以根据错误码进行相应的处理。以下是如何在C#中自定义错误码的方法:
public enum ErrorCode
{
Success = 0,
InvalidInput = 1,
DatabaseError = 2,
UnauthorizedAccess = 3,
// 添加其他错误码...
}
[WebMethod]
public string PerformAction(string input)
{
try
{
// 执行操作...
return JsonConvert.SerializeObject(new { errorCode = (int)ErrorCode.Success, message = "操作成功" });
}
catch (InvalidInputException ex)
{
return JsonConvert.SerializeObject(new { errorCode = (int)ErrorCode.InvalidInput, message = ex.Message });
}
catch (DatabaseException ex)
{
return JsonConvert.SerializeObject(new { errorCode = (int)ErrorCode.DatabaseError, message = ex.Message });
}
catch (UnauthorizedAccessException ex)
{
return JsonConvert.SerializeObject(new { errorCode = (int)ErrorCode.UnauthorizedAccess, message = ex.Message });
}
catch (Exception ex)
{
return JsonConvert.SerializeObject(new { errorCode = -1, message = "未知错误: " + ex.Message });
}
}
$.ajax({
url: "/YourService.asmx/PerformAction",
type: "POST",
data: JSON.stringify({ input: "yourInput" }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var result = response.d;
var errorCode = parseInt(result.errorCode);
var message = result.message;
switch (errorCode) {
case 0:
// 操作成功
break;
case 1:
// 无效输入
alert("错误: " + message);
break;
case 2:
// 数据库错误
alert("错误: " + message);
break;
case 3:
// 未经授权的访问
alert("错误: " + message);
break;
default:
// 其他错误
alert("错误: " + message);
break;
}
},
error: function (xhr, status, error) {
alert("请求失败: " + error);
}
});
通过这种方式,你可以在C# AJAX技术下自定义错误码,并在客户端根据错误码进行相应的处理。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。