From 22208fc1d95d679ae799bc7d252b95c367cfccf0 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Tue, 9 Apr 2024 15:54:55 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E7=A1=AE=E4=BF=9Dnull=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E5=92=8Cwrite=20response=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Filters/IgnoreDataCaseAttribute.cs | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/Src/Dlhis.Basic/Organization/Filters/IgnoreDataCaseAttribute.cs b/Src/Dlhis.Basic/Organization/Filters/IgnoreDataCaseAttribute.cs index 7af59c1e..a86442cf 100644 --- a/Src/Dlhis.Basic/Organization/Filters/IgnoreDataCaseAttribute.cs +++ b/Src/Dlhis.Basic/Organization/Filters/IgnoreDataCaseAttribute.cs @@ -17,21 +17,22 @@ public class IgnoreDataCaseAttribute : Attribute, IAsyncResultFilter var type = result.Value?.GetType(); if (type.IsGenericType && type.IsAssignableTo(typeof(IApiResult))) { - var apiResult = result.Value as DefaultApiResult; - - var body = new + if (result.Value is DefaultApiResult apiResult && !context.HttpContext.Response.HasStarted) { - code = 200, - msg = "操作成功", - data = apiResult.Data - }; + var body = new + { + code = 200, + msg = "操作成功", + data = apiResult.Data + }; - var json = JsonConvert.SerializeObject(body); - var bytes = Encoding.UTF8.GetBytes(json); + var json = JsonConvert.SerializeObject(body); + var bytes = Encoding.UTF8.GetBytes(json); - context.HttpContext.Response.ContentType = "application/json"; - context.HttpContext.Response.ContentLength = bytes.Length; - await context.HttpContext.Response.BodyWriter.WriteAsync(bytes); + context.HttpContext.Response.ContentType = "application/json"; + context.HttpContext.Response.ContentLength = bytes.Length; + await context.HttpContext.Response.BodyWriter.WriteAsync(bytes); + } } }