c# - ServiceStack:未设置 ResponseStatus

标签 c# servicestack

我正在使用 ServiceStack,但无法让自动注入(inject)的 ResponseStatus 属性处理我的响应 DTO。我的响应 DTO 实现了 IHasResponseStatus 但它不是在成功响应或错误期间设置的。

我想通过简单地抛出异常并让 ServiceStack 为客户端序列化异常和堆栈跟踪来使用 ServiceStack 的内置错误处理。我已按照 wiki 中“验证和错误处理”页面上的说明进行操作,但我一定遗漏了一些东西。此功能是否取决于 DTO 的特定命名约定?我的请求 DTO 的名称类似于“MyRequest”,响应是“MyRequestResponse”。

最佳答案

Response DTO 需要与 Request DTO 在同一个命名空间中,并且需要命名:

RequestDto{Response}

例如如果您服务的请求 DTO 是 Hello,则响应 DTO 应该是 HelloResponse

还可以让 StackTraces 也被注入(inject)

SetConfig(new EndpointHostConfig {
    DebugMode = true, //Enable StackTraces in development
});

关于 ServiceStack 的更多信息错误处理可以在 Validation wiki page 中找到.

关于c# - ServiceStack:未设置 ResponseStatus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10589647/

相关文章:

c# - MVVM进度栏和后台工作人员可见性

servicestack - 如何计时请求响应生命周期?

c# - 属于多个组织的用户的多个角色

c# - 如何在不显式调用方法的情况下向引用的程序集提供值?

C# 音频文件分析 API/库?

c# - ResolveBundleUrl 没有解析所有文件?

c# - ServiceStack 不会自动连接和注册 AppSettings

c# - 如何使用 DataAnnotation 将对象序列化为 JSON 以使用 ServiceStack 请求格式化双属性

.net-3.5 - 我可以在 .net 3.5 中使用 ServiceStack Web 服务吗

c# - 不应使用哪些键盘快捷键?