当前位置: 首页 > 编程语言 > C#

ServiceStack:如何处理错误?分享

时间:2023-04-10 17:45:40 C#

ServiceStack:如何处理错误?到目前为止,我使用ServiceStack效果很好,除了处理错误似乎很棘手。如果在消息的序列化过程中出现问题(因为我忘记在消息中添加默认构造函数),所有客户端都会返回一个消息,服务器有一个内部错误,状态码为500。在Global中添加一个监听器。asaxHttpApplication.Error事件不起作用,因为它永远不会被命中。Application_Error也没有。这不仅对于最终用户场景来说还不够,它还使调试这些错误变得非常麻烦,因为唯一的方法是在快速观察中找出这个丑陋的表达式:Encoding.Default.GetString(((System.IO.MemoryStream)((SyncMemoryStream)((System.Net.HttpWebResponse)(((WebException)ex).Response)).ResponseStream))._buffer)我想要的是捕获服务器端的所有错误(无论是ServiceStack序列化,还是我的service)并将所需信息添加到我拥有的所有消息类型的Errors集合中。有关ServiceStack中错误处理和验证的更多详细信息,请参阅ServiceStack的验证和错误处理Wiki页面。目前没有办法用自定义逻辑处理序列化异常(尽管我现在将把它添加到TODO列表中:)。如果您的ResponseDTO具有ResponseStatus属性(即或继承自IHasResponseStatus),ServiceStack应自动序列化您的异常。还使用AppHost.Configure()onload脚本中的SetConfig()将StackTrace的DebugMode序列化为true。以上是C#学习教程:ServiceStack:Howtohandleerrors?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: