将对象的属性为数值型的转换为String

news/2024/9/27 8:58:30

将对象的属性为数值型的转换为String

1、新建一个类

//注意:此处为待转换的类型,return true 不好用,必须将待转换的类型一一列出
using Newtonsoft.Json;namespace WinFormsApp1.Common
{public class ToStringConverter : JsonConverter{public override bool CanConvert(Type objectType){//注意:此处为待转换的类型,return true 不好用,必须将待转换的类型一一列出return typeof(int).IsAssignableFrom(objectType) || typeof(double).IsAssignableFrom(objectType) || typeof(decimal).IsAssignableFrom(objectType);}public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer){throw new NotImplementedException();}public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer){if (value == null){writer.WriteValue(value);}else{writer.WriteValue(value.ToString());}}}
}

 

2、用法 

using Newtonsoft.Json;
        private void button4_Click(object sender, EventArgs e){TestParam param = new TestParam();param.Name = "kkkkk";param.Value = 33333;string p = JsonConvert.SerializeObject(param, new ToStringConverter());textBox4.Text = p;}

3、测试类声明

    public class TestParam{public string Name { get; set; }public decimal Value { get; set; }}

4、运行结果

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/65275.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

《HelloGitHub》第 102 期

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣!简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。github.com/521xueweihan/HelloGitHub这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短…

弹幕树洞项目功能新增篇

项目地址 项目后端地址:https://github.com/ZyPLJ/ZYTteeHole项目前端页面地址:ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue目前项目测试访问地址:http://tree.pljzy.top/ 注意是http,输成https就访问到博客里面去了。系列文章📖.NET Core搭配V…

Cisco Secure Firewall Threat Defense 7.6.0 发布下载,新增功能概览

Cisco Secure Firewall Threat Defense 7.6.0 发布下载,新增功能概览Cisco Secure Firewall Threat Defense 7.6.0 发布下载,新增功能概览 Firepower Threat Defense (FTD) Software Release 7.6.0 Firepower 1100/3100/4100/4200/9300 Security Appliance 请访问原文链接:h…

【译】通过新的 WinUI 工作负荷和模板改进,深入原生 Windows 开发

我们创建了一个新的 Windows Dev Center 页面,简化了我们的 Getting Started with WinUI 文档,并与 Visual Studio 合作来改善开发人员在工作负荷和模板方面的体验。在 Build 2024 上,WinUI 团队宣布将重新关注 WinUI,将其作为我们推荐的原生 Windows 应用开发的首要应用开…

Windows10永久拒绝升级Win11

一、使用组策略阻止升级到windows11 需要专业版或企业版的Windows 10才能访问组策略编辑器。以下是操作步骤:单击开始菜单,输入gpedit.msc,打开本地组策略编辑器。 导航到“计算机配置”>“管理模板”>“Windows组件”>“Windows更新”>“适用于企业的Windows更…

arcgis怎样把面图层按另一面图层分割

摘自https://jingyan.baidu.com/article/6079ad0e9b5c8428fe86db70.htmlarcgis的桌面软件 主要应用于空间数据处理和管理,工作中往往会遇到要批量分割大量的面状数据,并且要按照其所处面的关系赋值。1、打开ArcMap软件,把两个面图层都加载到视图区域内,如下图2、在工具栏中…

10 #### 继承

继承 一定时刻知道,self是哪个类的对象。只要知道是哪个类的对象,就从哪个类开始进行查找 class base: # 父类,也可称为基类pass class Info(base): # 子类,也可称为派生类passclass base: # 父类,也可称为基类def f1(self):print(f1)class Info(base): # 子类,也可称为…

03 对象到底是个啥?

对象到底是个啥? # 2. 基于面向对象的方式实现上述功能 # 定义类 class MessageInfo:# 方法def send_email(to, body):msg = f给{to}发送邮件,内容:{body}print(msg)# 方法def send_dingding(to, body):msg = f给{to}发送邮件,内容:{body}print(msg)# 方法def send_wechat…