zoukankan      html  css  js  c++  java
  • 使用JSON.net 将实体类生成JSON字符串

    使用JSON.net 生成实体类的JSON串是很简单的,比如:

    //实体类

    代码
    public class SysNavModel
    {
            public SysNavModel()
            { }
            
            
    /// <summary>
            /// 构造函数 sys_nav
            /// </summary>
            /// <param name="navid">navid</param>
            /// <param name="title">title</param>
            /// <param name="url">url</param>
            /// <param name="iconcls">iconcls</param>
            /// <param name="parentid">parentid</param>
            /// <param name="visible">visible</param>
            /// <param name="orderid">orderid</param>
            public SysNavModel(int? navid, string title, string url, string iconcls, int? parentid, bool? visible, int? orderid)
            {
                
    this.navid = navid;
                
    this.title = title;
                
    this.url = url;
                
    this.iconcls = iconcls;
                
    this.parentid = parentid;
                
    this.visible = visible;
                
    this.orderid = orderid;
            }
            
            #region 实体属性
            private 
    int? _navid;
            private string _title;
            private string _url;
            private string _iconcls;
            private 
    int? _parentid;
            private bool
    ? _visible;
            private 
    int? _orderid;
            private string _ptag;
              
            
    /// <summary>
            /// navid
            /// </summary>
            public int? navid
            {
                set { _navid 
    = value; }
                get { 
    return _navid; }
            }

            
    /// <summary>
            /// 页面标记
            /// </summary>
            public string ptag
            {
                get { 
    return _ptag; }
                set { _ptag 
    = value; }
            }

            
    /// <summary>
            /// 导航菜单名称
            /// </summary>
            public string title
            {
                set { _title 
    = value; }
                get { 
    return _title; }
            }
                      
            
    /// <summary>
            /// 链接地址
            /// </summary>
            public string url
            {
                set { _url 
    = value; }
                get { 
    return _url; }
            }
                      
            
    /// <summary>
            /// ICON 样式类名
            /// </summary>
            public string iconcls
            {
                set { _iconcls 
    = value; }
                get { 
    return _iconcls; }
            }
                      
            
    /// <summary>
            /// 上级ID
            /// </summary>
            public int? parentid
            {
                set { _parentid 
    = value; }
                get { 
    return _parentid; }
            }
                      
            
    /// <summary>
            /// 是否显示
            /// </summary>
            public bool? visible
            {
                set { _visible 
    = value; }
                get { 
    return _visible; }
            }
                      
            
    /// <summary>
            /// 排序ID
            /// </summary>
            public int? orderid
            {
                set { _orderid 
    = value; }
                get { 
    return _orderid; }
            }

            
    /// <summary>
            /// 权限数组
            /// </summary>
            public ArrayList Permissions
            {
                get 
                {
                    
    return NavPermissionDal.Current.GetPermissionArray(this.navid.Value);
                }
            }
            #endregion
    //主要代码
            public override string ToString()
            {
                StringBuilder sb 
    = new StringBuilder();
                StringWriter sw 
    = new StringWriter(sb);

                
    new JsonSerializer().Serialize(new JsonTextWriter(sw), this);

                
    return sb.ToString();
            }
    }

     
    重写了实体类的ToString()方法
    在调时 直接调用实体类的ToString() 方法就可以生JSON字符串了。
    简单吧

     我们可以封装一个方法以便以后使用

    public static string ToJson(object obj)
    {
       StringBuilder sb 
    = new StringBuilder();
       StringWriter sw 
    = new StringWriter(sb);

       JsonSerializer json 
    = new JsonSerializer();
       json.Serialize(
    new JsonTextWriter(sw),obj);

       
    return sb.ToString();
     }
  • 相关阅读:
    Selenium之IE浏览器的启动问题及解决
    Selenium之Chrome浏览器的启动问题及解决
    Selenium之IE浏览器的启动
    Selenium之firefox浏览器的启动
    【luogu 3373】【模板】线段树2
    【luogu 3372】【模板】线段树1
    【luogu 1908】逆序对
    【codevs2822】爱在心中
    【bzoj1051】 [HAOI2006]受欢迎的牛
    【luogu 2863】[USACO06JAN]牛的舞会The Cow Prom
  • 原文地址:https://www.cnblogs.com/hxling/p/1865575.html
Copyright © 2011-2022 走看看