当前位置: 首页 > news >正文

截图京东图片做网站完美动力培训价格表

截图京东图片做网站,完美动力培训价格表,wordpress自定义上传图片,互联网装修公司加盟在 Newtonsoft.Json 中创建一个根据 TypeConverter 转换的 JsonConverter 允许你在序列化和反序列化过程中利用 .NET 的 TypeConverter 机制。这种方式特别有用,当你想要为不直接支持 JSON 序列化的类型提供自定义的序列化逻辑时,比如第三方库中的类型或…

        在 Newtonsoft.Json 中创建一个根据 TypeConverter 转换的 JsonConverter 允许你在序列化和反序列化过程中利用 .NET 的 TypeConverter 机制。这种方式特别有用,当你想要为不直接支持 JSON 序列化的类型提供自定义的序列化逻辑时,比如第三方库中的类型或者特殊的数据结构。
下面是一个示例,展示如何实现这样一个 JsonConverter:


1.    定义 TypeConverterJsonConverter 类


这个自定义的 JsonConverter 将检查目标类型是否有一个 TypeConverter,该 TypeConverter 能够将对象转换为字符串,反之亦然。如果有,它将使用这个 TypeConverter 来进行序列化和反序列化。

public class TypeConverterJsonConverter : JsonConverter
{public override bool CanConvert(Type objectType){// 检查是否存在能够转换到字符串和从字符串转换回来的 TypeConverterTypeConverter converter = TypeDescriptor.GetConverter(objectType);return converter != null && converter.CanConvertFrom(typeof(string)) && converter.CanConvertTo(typeof(string));}public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer){if (reader.TokenType == JsonToken.Null){return null;}var converter = TypeDescriptor.GetConverter(objectType);return converter.ConvertFromInvariantString((string)reader.Value);}public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer){if (value == null){writer.WriteNull();return;}var converter = TypeDescriptor.GetConverter(value.GetType());writer.WriteValue(converter.ConvertToInvariantString(value));}

2.    使用 TypeConverterJsonConverter


现在,你可以在序列化和反序列化时使用这个自定义的 JsonConverter。这对于那些通过 TypeConverter 可以转换为字符串和从字符串转换回来的类型特别有用。

[JsonConverter(typeof(TypeConverterJsonConverter))]
public class CustomType
{// 假设这个类有一个能够转换为字符串和从字符串转换回来的 TypeConverter
}// 现在,你可以序列化和反序列化包含 CustomType 类型的对象了
CustomType myObject = new CustomType();
string json = JsonConvert.SerializeObject(myObject);CustomType deserializedObject = JsonConvert.DeserializeObject<CustomType>(json);

注意事项


•    这个自定义 JsonConverter 假设目标类型有一个有效的 TypeConverter,能够进行到字符串和从字符串的转换。不是所有的类型都有这样的 TypeConverter,所以在使用之前请确保进行了适当的检查。
•    使用 TypeConverter 进行序列化和反序列化可能不适用于所有场景,特别是当类型的字符串表示不足以完全恢复对象状态时。在这些情况下,考虑实现更具体的序列化逻辑。
•    这种方法的优点是它提供了一种灵活的方式来支持额外的类型,而无需为每种类型编写专门的序列化逻辑。 

System.Windows.Controls 命名空间 | Microsoft Learn

http://www.ritt.cn/news/26805.html

相关文章:

  • mysql导入wordpress郑州百度seo网站优化
  • 网站建设解决方案重要性深圳品牌策划公司
  • 长沙网站建设有限公司广告主资源哪里找
  • 做网站首页图片免费seo网站推广在线观看
  • 爱站工具想说超人下拉系统计算机培训机构
  • 国外免费搭建网站源码网站建设主要推广方式
  • 宁波网站建设托管唐山seo推广公司
  • WordPress滑动验证码插件求职seo服务
  • 查网站域名备案查询短视频运营方案策划书
  • 自动城市定位装修网站建设网络销售平台排名
  • 做网站前台模型要做什么呢创建网页
  • 邗江区疫情最新消息西安百度seo推广
  • 做网站合同最新军事新闻 今日 最新消息
  • 南京网站制作步骤百度热搜榜排名
  • 广东和深圳的关系兰州seo网站建设
  • 溧阳网站定制百度号码认证申诉平台
  • 广州房地产网站建设方案成人就业技术培训机构
  • 链接优化方法杭州搜索引擎优化公司
  • html5个人博客网站模板微信上怎么做广告推广
  • 网站排名软件 利搜传统营销与网络营销的整合方法
  • 商城网站建设系统上海网站快速排名优化
  • 如何用手机制作游戏seo竞价培训
  • 怎样做网站视频网站如何做优化推广
  • 泉州专门制作网站佛山网站建设公司哪家好
  • 寮步网站仿做东莞seo关键词排名优化排名
  • 国内flex做的网站新产品宣传推广策划方案
  • 做孵化的网站免费刷seo
  • it外包公司前景如何网站关键词优化排名软件系统
  • 济南网站建设专业公司seo系统源码
  • 企业网站排名靠前电商培训机构需要什么资质