首页 > 其他分享 >使用Wesky.Net.Opentools库,一行代码实现实体类类型转换为Json格式字符串

使用Wesky.Net.Opentools库,一行代码实现实体类类型转换为Json格式字符串

时间:2024-06-05 21:44:41浏览次数:21  
标签:类型转换 qq 实体类 1.0 get Json set 版本 public

安装1.0.10以及以上版本的 Wesky.Net.OpenTools 包 0   包内,该功能的核心代码如下: 自定义属性: 0 实体类JSON模式生成器: 0   使用方式:引用上面的1.0.10版本或以上的包。如果实体类有特殊需求,例如映射为其他名称,可以用OpenJson属性来实现。实体类对象案例如下: 0 上面实体类,提供了属性小写标记、没有任何标记、以及一个集合属性,用于展示可能存在的多种情况。如果需要小写,或者映射为其他的,可以通过OpenJson属性来标记为指定的名称;如果存在多层或者集合,也可以自动识别嵌套关系。 使用方式,只需要一行代码即可: 0 输出结果如下所示。 0 应用场景:可以用于实现类似swagger的输入参数的快速赋值操作。例如访问webapi接口,通过解析对应参数实体,自动显示输入参数的Json结构,然后里面填写结果进行快速演示测试之类的。或者其他拓展方法等,需要大佬们感兴趣的自己去玩玩。 本次演示代码:

  public class TestInfo
  {
      
      [OpenJson("name")]
      public string Name { get; set; }
      [OpenJson("description")]
      public string Description { get; set; }
      public int Age { get; set; }
      public bool IsMale { get; set; }
      public string School { get; set; }
      public List<Student> Students { get; set; }
  }

  public class Student
  {
      [OpenJson("name")]
      public string Name { get; set; }
      public string Address { get; set; }

  }
  
  // Program:
  static void Main(string[] args)
{
    var data = OpenJsonSchemaGenerator.CreateJsonSchema(typeof(TestInfo));
   
    Console.WriteLine(data);
    Console.ReadLine();
}

 

  如果以上内容对你有帮助,欢迎点赞、转发、在看和关注我的个人公众号:【Dotnet Dancer】 OpenTools系列文章快捷链接【新版本完全兼容旧版本,不需要更新任何代码均可使用】: 1.0.8版本: 上位机和工控必备!用.NET快速搞定Modbus通信的方法 https://mp.weixin.qq.com/s/Yq6kuXzFglHfNUqrHcQO9w 1.0.7版本: 大揭秘!.Net如何在5分钟内快速实现物联网扫码器通用扫码功能? https://mp.weixin.qq.com/s/-5VuLAS6HlElgDQXRY9-BQ 1.0.6版本: .NET实现获取NTP服务器时间并同步(附带Windows系统启用NTP服务功能) https://mp.weixin.qq.com/s/vMW0vYC-D9z0Dp6HFSBqyg 1.0.5版本: C#使用P/Invoke来实现注册表的增删改查功能 https://mp.weixin.qq.com/s/LpsjBhDDzkwyLU_tIpF-lg 1.0.3版本: C#实现图片转Base64字符串,以及base64字符串在Markdown文件内复原的演示 https://mp.weixin.qq.com/s/n9VtTCIiVUbHJk7OfoCcvA 1.0.2版本: ​C#实现Ping远程主机功能(支持IP和域名) https://mp.weixin.qq.com/s/d-2HcIM1KaLo-FrrTLkwEw 1.0.1版本: 开始开源项目OpenTools的创作(第一个功能:AES加密解密) https://mp.weixin.qq.com/s/78TA-mst459AuvAHwQViqQ   【备注】包版本完全开源,并且没有任何第三方依赖。使用.net framework 4.6+、任意其他跨平台.net版本环境,均可直接引用。  

标签:类型转换,qq,实体类,1.0,get,Json,set,版本,public
From: https://www.cnblogs.com/weskynet/p/18233902

相关文章

  • 实体类为啥要序列化
     实体类实现Serializable的作用作用:第一个是便于存储,第二个是便于传输Serializable,之前一直有使用,默认的实体类就会实现Serializable接口,对具体原因一直不是很了解,同时如果没有实现序列化,同样没什么影响,什么时候应该进行序列化操作呢?今天查了下资料,大致总结一下。1、其实......
  • yarn 命令如何查看node_modules中的某个依赖包是被package.json中的哪个包所使用的?
    Yarn本身并没有直接提供一个命令来查看node_modules中的某个依赖包是由package.json中的哪个包直接或间接引入的。但是,你可以通过一些间接的方式来获取这些信息:手动检查:打开node_modules中你想查询的依赖包的package.json文件,查看它的name字段确认包名。然后回到你的项目根......
  • Python数据类型转换(新)
    目录Python数据类型的转换隐式类型转换显式类型转换Python数据类型的转换数据类型分为1.隐式类型转换2.显式类型转换隐式类型转换在隐式类型转换中,Python会自动将一种数据类型转换为另一种数据类型,不需要认为去干预比如在进行算术运算的时候,较低数据类型(整数)就会......
  • JSON 数据格式化方法
    文章目录数据介绍IDE或脚本格式化在线工具网址总结数据介绍JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,它基于JavaScript编程语言的一个子集。尽管它起源于JavaScript,但JSON已经成为了一个完全独立于语言的文本格式,被广泛采用和应用于多种编程......
  • `jsonb` 报错 `invalid input syntax for type timestamp with time zone ““
    哈喽,大家好,我是木头左!大家好,我是你们的朋友,公众号博主。今天要聊一聊一个常见的数据库问题:jsonb报错invalidinputsyntaxfortypetimestampwithtimezone:""。这个问题可能会影响到你的开发工作,但是别担心,我会用最简单易懂的方式,帮助你解决这个问题。1.问题解析需要......
  • .Net项目快速生成数据库的实体类
    MySQL数据库在NuGet包管理中安装以下包,选择符合项目.Net版本的包Microsoft.EntityFrameworkCore.ToolsMicrosoft.EntityFrameworkCore.DesignMySql.EntityFrameworkCore 在程序包控制管理台执行以下命令Scaffold-DbContext"DataSource=localhost;InitialCatalog=mydb;......
  • JSON类型处理器
    数据库的user表中有一个info字段,是JSON类型:格式像这样:{"age":20,"intro":"佛系青年","gender":"male"}而目前User实体类中却是String类型:这样一来,我们要读取info中的属性时就非常不方便。如果要方便获取,info的类型最好是一个Map或者实体类。而一旦我们把info改为对象......
  • 将来自 Telegraf 的 JSON 数据扁平化,以便在 ThingsBoard 中使用
    我连接了ThingsBoard和Telegraf以可视化CPU使用率,但收到的数据是嵌套JSON格式。我尝试了不同的方法,但无法以扁平化的JSON格式获取数据。使用Telegraf1.30.0版本,数据以以下格式返回:[{"fields":{"usage_guest":0、"usage_guest_nice":0、......
  • C++ 强制类型转换运算符简介
    C++提供了四种强制类型转换运算符:static_cast、reinterpret_cast、const_cast和dynamic_cast。这些运算符各自具有特定的用途,适用于不同的类型转换需求。本文将详细介绍这四种运算符及其应用场景,并讨论它们在向上转换中的使用方法。1.static_caststatic_cast用于在编译时执......
  • Day8 JSON
    序列化:通过某种方式把数据结构或对象写入到磁盘文件中或通过网络传到其他节点的过程//将某种编程语言支持的数据类型对象做一个格式化字符串,从而能够进行储存和网络传输反序列化:把磁盘中对象或者把网络节点中传输的数据恢复为python的数据对象的过程JSON.stringify(obj):把obj对象......