C#.NET扩展的动态对象支持动态属性和方法以及Json格式与对象互转
C#.NET扩展的动态对象支持动态属性和方法以及Json格式与对象互转C# Code:
dynamic theObj = new MyDynamicObject();
theObj.Name = "我的动态属性名称";//动态属性
theObj.Age = 10;
theObj.Model = "www.cscode.net C/S框架网修订(2017-09-18)";
string jsonString = JsonConvert.SerializeObject(theObj);
//{"Name":"我的动态属性名称","Age":10,"Model":"www.cscode.net C/S框架网修订(2017-09-18)"}
dynamic eo2 = JsonConvert.DeserializeObject<MyDynamicObject>(jsonString);
string value1 = eo2.Title;
string value2 = eo2.Content;
string value3 = eo2.Name;
string value4 = eo2.Age.ToString();
string value5 = eo2.Model;
//动态方法,这里不能没法定义参数,调用的时候可以是任意多参数,具体参数类型和含义就只能自己去小心处理了.
theObj.show = MyDynamicDelegateObj.CreateDelegate(OnTestDynamicDelegate);
theObj.show("Hello OK:");
theObj.shows("hello");//无此方法,抛出异常
//来源:C/S框架网(www.csframework.com) QQ:1980854898
dynamic theObj = new MyDynamicObject();
theObj.Name = "我的动态属性名称";//动态属性
theObj.Age = 10;
theObj.Model = "www.cscode.net C/S框架网修订(2017-09-18)";
string jsonString = JsonConvert.SerializeObject(theObj);
//{"Name":"我的动态属性名称","Age":10,"Model":"www.cscode.net C/S框架网修订(2017-09-18)"}
dynamic eo2 = JsonConvert.DeserializeObject<MyDynamicObject>(jsonString);
string value1 = eo2.Title;
string value2 = eo2.Content;
string value3 = eo2.Name;
string value4 = eo2.Age.ToString();
string value5 = eo2.Model;
//动态方法,这里不能没法定义参数,调用的时候可以是任意多参数,具体参数类型和含义就只能自己去小心处理了.
theObj.show = MyDynamicDelegateObj.CreateDelegate(OnTestDynamicDelegate);
theObj.show("Hello OK:");
theObj.shows("hello");//无此方法,抛出异常
//来源:C/S框架网(www.csframework.com) QQ:1980854898
C# Code:
private object OnTestDynamicDelegate(dynamic sender, params object[] args)
{
if (args != null && args.Length > 0)
{
MessageBox.Show(args[0].ToString() ":" sender.Name);
}
else
{
MessageBox.Show(sender.aaa);
}
return null;
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
private object OnTestDynamicDelegate(dynamic sender, params object[] args)
{
if (args != null && args.Length > 0)
{
MessageBox.Show(args[0].ToString() ":" sender.Name);
}
else
{
MessageBox.Show(sender.aaa);
}
return null;
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
参考文档:
FastReport.NET 2023使用DataTable报表数据源配置JsonDataSourceConnection连接|C/S开发框架
.NETCore WebApi框架:从appsettings.json 读取参数配置|C/S开发框架
.NET7 WinFormsApp应用操作appsettings.json配置文件
C#.NET 定义动态对象dynamic以及转换JSON字符串
CSFrameworV6试用版开发指南 | 主程序初始化CSFramework.EF数据库框架(.NET8)|C/S开发框架
.NETCore WebApi后端开发框架+达梦数据库测试报告|C/S开发框架
CSFramework.WebapiV3(.NET7/NetCore) 系统安全及Token令牌介绍|C/S开发框架
FastReport.NET2023报表数据源配置详解|C/S开发框架
C#.NET获取每年国家法定节假日清单|C/S开发框架
.NET Core JWT Token 介绍|C/S开发框架
C# .NET 入门概念与知识点总结|C/S开发框架
1.1 什么是ASP.NET / WebAPI / MVC?|C/S开发框架
HTTP|POST提交数据:ContentType=application/json 内容格式|C#源码
百度地图API - 地址标注与位置显示(C#.NET)-C/S开发框架
C# .NET 6 新增的20个功能API,实例源码-C/S开发框架
C#.NET Log4Net日志的基础用法-C/S开发框架
FastReport.NET 2023使用DataTable报表数据源配置JsonDataSourceConnection连接|C/S开发框架
.NETCore WebApi框架:从appsettings.json 读取参数配置|C/S开发框架
.NET7 WinFormsApp应用操作appsettings.json配置文件
C#.NET 定义动态对象dynamic以及转换JSON字符串
CSFrameworV6试用版开发指南 | 主程序初始化CSFramework.EF数据库框架(.NET8)|C/S开发框架
.NETCore WebApi后端开发框架+达梦数据库测试报告|C/S开发框架
CSFramework.WebapiV3(.NET7/NetCore) 系统安全及Token令牌介绍|C/S开发框架
FastReport.NET2023报表数据源配置详解|C/S开发框架
C#.NET获取每年国家法定节假日清单|C/S开发框架
.NET Core JWT Token 介绍|C/S开发框架
C# .NET 入门概念与知识点总结|C/S开发框架
1.1 什么是ASP.NET / WebAPI / MVC?|C/S开发框架
HTTP|POST提交数据:ContentType=application/json 内容格式|C#源码
百度地图API - 地址标注与位置显示(C#.NET)-C/S开发框架
C# .NET 6 新增的20个功能API,实例源码-C/S开发框架
C#.NET Log4Net日志的基础用法-C/S开发框架
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服

(VIP会员下载)