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());
                    }  
                } 
            }
    

      

  • 相关阅读:
    Linux network driver
    Linux dd
    Linux aclocal
    Ubuntu
    Makefile
    控制导出符号
    Apache
    Linux nm命令
    Git Submodule
    Linux sed
  • 原文地址:https://www.cnblogs.com/valeb/p/9091522.html
Copyright © 2011-2022 走看看