zoukankan      html  css  js  c++  java
  • .NET MVC 表主外键关系 JSON 无限循环 方案二(推荐)

       public class JsonResultObject:JsonResult
            {
                private Newtonsoft.Json.JsonSerializerSettings Settings { get; private set; } 
                public JsonResultObject()
                {
                    Settings = new Newtonsoft.Json.JsonSerializerSettings
                    { 
                        ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore
                    }; 
                }
                public override void ExecuteResult(ControllerContext context)
                {
                    if (context == null)
                        throw new ArgumentNullException("context");
                    if (this.JsonRequestBehavior == JsonRequestBehavior.DenyGet && string.Equals(context.HttpContext.Request.HttpMethod, "GET", StringComparison.OrdinalIgnoreCase))
                        throw new InvalidOperationException("JSON GET is not allowed");
                    var response = context.HttpContext.Response;
                    response.ContentType = string.IsNullOrEmpty(this.ContentType) ? "application/json" : this.ContentType;
                    if (this.ContentEncoding != null)
                        response.ContentEncoding = this.ContentEncoding;
                    if (this.Data == null)
                        return;
                    var scriptSerializer = Newtonsoft.Json.JsonSerializer.Create(this.Settings);
                    using (var sw = new StringWriter())
                    {
                        scriptSerializer.Serialize(sw, this.Data);
                        response.Write(sw.ToString());
                    }  
                } 
            }
    

      

  • 相关阅读:
    字符,字符串,字节
    111
    串口通信
    字符编码
    枚举和结构体
    参数数组
    .Net垃圾回收机制
    try{ } catch{ } finally{ }
    LVS 工作原理图文讲解
    自动化运维工具—Ansible常用模块二
  • 原文地址:https://www.cnblogs.com/valeb/p/9091522.html
Copyright © 2011-2022 走看看