Rest IErrorHandler中响应的内容类型错误

Rest IErrorHandler中响应的内容类型错误,rest,error-handling,biztalk,Rest,Error Handling,Biztalk,我想以JSON格式向我的服务发送响应。我在自定义行为中捕获自定义错误: void IErrorHandler.ProvideFault(Exception error, MessageVersion version, ref Message fault) { XDocument errorMsg = XDocument.Parse("<errorMessage>" + error.Message + "<

我想以JSON格式向我的服务发送响应。我在自定义行为中捕获自定义错误:

void IErrorHandler.ProvideFault(Exception error, MessageVersion version, ref Message fault)

        {

            XDocument errorMsg = XDocument.Parse("<errorMessage>" + error.Message + "</errorMessage>");

            var jsonWriter = new JsonErrorBodyWriter(errorMsg);

            fault = Message.CreateMessage(version, null, jsonWriter);

            fault.Properties.Add(WebBodyFormatMessageProperty.Name, new WebBodyFormatMessageProperty(WebContentFormat.Json));

            HttpResponseMessageProperty prop = new HttpResponseMessageProperty();

            prop.StatusCode = HttpStatusCode.Unauthorized;

            prop.Headers.Add("Content-Type", "application/json; charset=utf-8");  

            prop.Headers[HttpRequestHeader.ContentType] = "application/json; charset=utf-8"; 
            --Tried different ways to achieve this



            fault.Properties.Add(HttpResponseMessageProperty.Name, prop);

        }
答复:

HTTP/1.1 401 Unauthorized

Content-Type: application/xml; charset=utf-8

Server: Microsoft-IIS/10.0

X-Powered-By: ASP.NET

Date: Wed, 30 Sep 2020 08:41:15 GMT

Content-Length: 37


{"description":"Autorization Failed"}

我的代码中有什么错误?

是将错误发送给服务的调用方,还是使用服务并将错误发回BizTalk?当代码执行时,您是否调试过代码?我会将其发送回调用方。我应该在编排中处理它吗?不,我没有调试,因为我将调试程序附加到iis w3wp进程或主机进程时,它不会停止/中断。
HTTP/1.1 401 Unauthorized

Content-Type: application/xml; charset=utf-8

Server: Microsoft-IIS/10.0

X-Powered-By: ASP.NET

Date: Wed, 30 Sep 2020 08:41:15 GMT

Content-Length: 37


{"description":"Autorization Failed"}