c# dynamic动态类型和匿名类
程序员文章站
2022-07-02 13:05:58
为表示对原作者的尊重,先贴出原文链接:https://www.cnblogs.com/hnsongbiao/p/8250956.html 以下是正文: dynamic类型简单示例 动态添加字段 List fieldList = new List() { "Name", ......
为表示对原作者的尊重,先贴出原文链接:
以下是正文:
dynamic类型
简单示例
dynamic expando = new system.dynamic.expandoobject(); //动态类型字段 可读可写 expando.id = 1; expando.name = "test"; string json = utils.convertjson.jsonencode(expando); //输出{id:1,name:'test'}
动态添加字段
dynamic dobj = new system.dynamic.expandoobject(); var dic = (idictionary<string, object>)dobj; foreach (var fielditem in fieldlist) { dic[fielditem] = "set "+fielditem+" value"; /*实现类似js里的 动态添加属性的功能 var obj={}; var field="id"; eval("obj."+field+"=1"); alert(obj.id); //1 */ } var val = dobj.name; //“set name value” var val1=dobj.age;//”set age value“
枚举该对象所有成员
foreach (var fielditem in (idictionary<string, object>)dobj) { var v = (fielditem.key + ": " + fielditem.value); } 匿名类 //var aaaa = new {id=1,name="test"}; //匿名类字段只读不可写 dynamic aaaa = new {id=1,name="test"}; //匿名类字段只读不可写 aaaa.id = 2; //不可写 报错无法为属性或索引器“<>f__anonymoustype1<int>.id”赋值 - 它是只读的 dynamic obj = newtonsoft.json.jsonconvert.deserializeobject("{name:'aa',sex:'male',age:11}"); var name = obj.name.value; //aa
上一篇: 【学习笔记】PYTHON语言程序设计(北理工 嵩天)
下一篇: Vue 组件系统
推荐阅读
-
深入讲解C#编程中嵌套类型和匿名类型的定义与使用
-
C#的数据类类型和SQLSERVER数据库的类型对照表一览
-
C#程序编写高质量代码改善的157个建议【13-15】[为类型输出格式化字符串、实现浅拷贝和深拷贝、用dynamic来优化反射]
-
c# dynamic动态类型和匿名类
-
C#动态对象(dynamic)详解(实现方法和属性的动态)
-
近期.NET学习及项目开发整理-SQLSERVER中的数据类型和C#中数据类
-
CLR via C# 方法 实例构造器和类(引用类型)
-
C#中匿名对象与var以及动态类型 dynamic的详解
-
深入讲解C#编程中嵌套类型和匿名类型的定义与使用
-
c#封装、类的定义和使用、访问性、构造器、重载构造器、解构器、静态方法、共享字段、静态类、静态using语句、匿名类