C# 扩展方法

扩展方法:提供类共同方法的扩展。

static void Main(string[] args)
        {
            var u = new User() { ID = 4, Name = "部门2", Age = 2, IsChild = false };
            var s = u.ToJsonString();
            Console.WriteLine(s);
 
 
            Console.ReadLine();
        }
 
//测试类
    public class User
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
        public bool? IsChild { get; set; }
 
        public User Clone()
        {
            return (User)this.MemberwiseClone();
        }
 
    }
 
//扩展方法
    public static class Extension
    {
        /// <summary>
        /// Model to json string
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="list"></param>
        /// <returns></returns>
        public static string ToJsonString<T>(this T list)
        {
            JsonSerializerSettings settings = new JsonSerializerSettings();
            settings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            string result = JsonConvert.SerializeObject(list, settings);
            return result;
        }
 
    }

结果:

原文地址:https://www.cnblogs.com/hanjun0612/p/14260768.html