zoukankan      html  css  js  c++  java
  • this 的用法 为原始类型扩展方法

    namespace Demo
    {
        public static class Extends
        {
         // string类型扩展ToJson方法
            public static object ToJson(this string Json)
            {
                return Json == null ? null : JsonConvert.DeserializeObject(Json);
            }
            // object类型扩展ToJson方法
            public static string ToJson(this object obj)
            {
                var timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" };
                return JsonConvert.SerializeObject(obj, timeConverter);
            }
            public static string ToJson(this object obj, string datetimeformats)
            {
                var timeConverter = new IsoDateTimeConverter { DateTimeFormat = datetimeformats };
                return JsonConvert.SerializeObject(obj, timeConverter);
            }
            public static T ToObject<T>(this string Json)
            {
                return Json == null ? default(T) : JsonConvert.DeserializeObject<T>(Json);
            }
            public static List<T> ToList<T>(this string Json)
            {
                return Json == null ? null : JsonConvert.DeserializeObject<List<T>>(Json);
            }
            public static DataTable ToTable(this string Json)
            {
                return Json == null ? null : JsonConvert.DeserializeObject<DataTable>(Json);
            }
            public static JObject ToJObject(this string Json)
            {
                return Json == null ? JObject.Parse("{}") : JObject.Parse(Json.Replace(" ", ""));
            }
        }
    
        class Program
        {
            static void Main(string[] args)
            {
                try
                {
                    List<User> users = new List<User>{
                        new User{ID="1",Code="zs",Name="张三"},
                        new User{ID="2",Code="ls",Name="李四"}
                    };
    
                    // list转化json字符串
                    string json = users.ToJson();
              // string转化List
                    users = json.ToList<User>();
    
                    // string转化DataTable
                    DataTable dt = json.ToTable();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex);
                }
                finally
                {
                    Console.ReadLine();
                }
            }
        }
    
        public class User
        {
            public string ID { get; set; }
            public string Code { get; set; }
            public string Name { get; set; }
        }
    }
    

      

  • 相关阅读:
    CPU深度学习模型推理性能抖动问题
    深度学习推理性能优化
    Winograd Convolution 推导
    Res-Family: From ResNet to SE-ResNeXt
    CPU二则
    CPU TFLOPS 计算
    深度学习专题
    计算系统中互联设备Survey
    深度学习框架演进史
    天池医疗AI大赛支持有感
  • 原文地址:https://www.cnblogs.com/muxueyuan/p/10869276.html
Copyright © 2011-2022 走看看