惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Apple Machine Learning Research
Apple Machine Learning Research
T
Tailwind CSS Blog
月光博客
月光博客
爱范儿
爱范儿
有赞技术团队
有赞技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
aimingoo的专栏
aimingoo的专栏
GbyAI
GbyAI
腾讯CDC
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
Microsoft Azure Blog
Microsoft Azure Blog
IT之家
IT之家
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
云风的 BLOG
云风的 BLOG
U
Unit 42
博客园 - 三生石上(FineUI控件)
A
About on SuperTechFans
N
Netflix TechBlog - Medium
Google DeepMind News
Google DeepMind News
雷峰网
雷峰网
L
LangChain Blog

博客园 - 快乐家++

QMT A股 量化程序开发资料 通过 PyWenCai 模块采集问财涨停数据的例子 均线粘合 【通达信】 MS-SQL事务处理语句 SQL Update:使用一个表的数据更新另一张表 CefSharp 使用备忘录 IIS7 伪静态 web.config 配置方法 针对不同.NET版本的条件编译 带查询参数 可分页 的 T-SQL 语句写法 当鼠标经过表格数据行时颜色不同且奇偶行颜色也不同 (纯CSS) JavaScript 版本的 RSA加密库文件 电工葵花宝典 一开关接线方法 c# 执行javascript 脚本 HttpWebRequest出错 服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF 秒转换成时分秒 SQL2008中Merge的用法 C#将exe运行程序嵌入到自己的winform窗体中 如何让用户只能访问特定的数据库(MSSQL) 委托、回调 Lambda表达式书写方式
将Json数据 填充到 实例类 的函数
快乐家++ · 2018-09-08 · via 博客园 - 快乐家++
        /// <summary>
        /// 将Json数据 填充到 实例类
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="J">json数据</param>
        /// <param name="M">实例类型引用</param>
        public void toInstance<T>(JObject J, ref T M)
        {
            var t = M.GetType();
            foreach (var pi in M.GetType().GetProperties())
            {
                var V = J[pi.Name];
                if (V == null) continue;
                switch (pi.PropertyType.Name)
                {
                    case "Boolean": pi.SetValue(M, V.Value<bool>(), null); break;
                    case "String": pi.SetValue(M, V.Value<string>(), null); break;
                    case "Decimal": pi.SetValue(M, V.Value<Decimal>(), null); break;
                    case "DateTime": pi.SetValue(M, V.Value<DateTime>(), null); break;
                    case "Int16": pi.SetValue(M, V.Value<Int16>(), null); break;
                    case "Int32": pi.SetValue(M, V.Value<int>(), null); break;
                    case "Int64": pi.SetValue(M, V.Value<Int64>(), null); break;
                    case "Single": pi.SetValue(M, V.Value<Single>(), null); break;
                    case "String[]": pi.SetValue(M, V.Select(s => s.Value<string>()).ToArray(), null); break;
                    case "Int32[]": pi.SetValue(M, V.Select(s => s.Value<int>()).ToArray(), null); break;
                }
            }
        }

var J = JsonConvert.DeserializeObject(textBox1.Text) as JObject;

var M = new schemeModel();

toInstance(J, ref M);