自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 .NET下 支持大小写不敏感的JSON Schema验证方法

本文介绍了.NET下 实现属性名大小写无关的JSON Schema验证方法,其中最优雅的方式应该是用 .NET实现库中的扩展选项。欢迎大家将使用过程中发现的问题报到repo issue,希望.NET实现库能帮到大家。

2024-06-25 10:34:28 352

原创 用.NET代码生成JSON Schema 验证器

对于验证JSON数据方面的复杂需求,可以用JSON Schema解决。对于不希望直接交互JSON Schema格式的service来说,可以用.Net下的 Lateapexearlyspeed.Json.Schema 实现库的 fluent schema builder模式,通过写代码的形式生成JSON验证器。对于希望用强类型风格的代码生成JSON Schema的需求,也可以用 Lateapexearlyspeed.Json.Schema 实现库的 fluent schema builder模式。

2024-05-31 12:27:45 935

原创 Json Schema高性能.net实现库 LateApexEarlySpeed.Json.Schema - 直接从code生成json schema validator

和System.Text.Json类似, library支持通过attribute和option来提供用户定义的属性名称:set;Note: 当对某类属性指定了 JsonPropertyNameAttribute,同时又在option中指定了自定义 PropertyNamingPolicy, 则那个属性将使用JsonPropertyNameAttribute,其他属性将使用option.

2024-01-30 17:22:45 798 1

原创 Json Schema介绍 和 .net 下的实践 - 基于Lateapexearlyspeed.Json.Schema - 基础1 - type关键字和string类型

本系列旨在介绍Json Schema的常见用法,以及.net实现库Lateapexearlyspeed.Json.Schema的使用这篇文章将介绍Json Schema中的type关键字,和string类型的常见验证功能。用例基于.net的LateApexEarlySpeed.Json.Schema nuget package。这是新创建的一个 Json Schema在.net下的高性能实现库。

2024-01-14 11:41:30 953 1

原创 Json Schema简介和Json Schema的高性能.net实现库 LateApexEarlySpeed.Json.Schema

项目原始文档:https://github.com/lateapexearlyspeed/Lateapexearlyspeed.JsonSchema.Doc中文文档:LateApexEarlySpeed.Json.Schema是2023年12月发布的一个新的.net下的Json Schema实现库,基于截止到2023年12月为止最新版的Json Schema验证功能经过了for draft 2020.12的测试。(部分排除的用例见下面的已知限制章节)

2023-12-26 12:43:20 1632 1

原创 一次对pool的误用导致的.net频繁gc的诊断分析

这次gc问题的诊断分析,需要脱离sos,手动找引用关系,从而获得了“这次大对象是ArrayPool挂着”这层信息,进而找出了ArrayPool instances与大byte[] instances一对一的不正常关系。如果你在.net的开发工作中遇到了cpu过高、内存泄漏、内存过高、程序死锁、崩溃或其他资源耗尽等问题需要帮助,可关注公众号"dotnet程序故障诊断"并留言,希望能帮助到你。

2023-03-28 09:34:48 105

原创 一次.net code中的placeholder导致的高cpu诊断

无论在自己的代码还是别人的代码里加placeholder,一定要谨慎添加这种empty block。加对了顶多稍影响性能和可读性,加不对就是给别人或自己或项目组添堵了。并且这种bug只在特定条件下被触发,更难根据代码的版本历史排除出故障,而适合用底层诊断技术分析。如果你在.net的开发工作中遇到了cpu过高、内存泄漏、内存过高、程序死锁、崩溃或其他资源耗尽等问题需要帮助,可关注公众号"dotnet程序故障诊断"并留言,希望能帮助到你。

2023-03-18 09:27:00 51

原创 公司某资料子系统定期cpu过高的诊断

看来大家不能这么随随便便的写C#代码啊,虽然.net sdk会为C#程序员提供便利和安全性,但自己也不该想当然的无脑coding哈。最后同事的脸比较红哈🙈如果你在.net的开发工作中遇到了cpu过高、内存泄漏、内存过高、程序死锁、崩溃或其他资源耗尽等问题需要帮助,可关注公众号"dotnet程序故障诊断"并留言,希望能帮助到你。

2023-03-06 11:35:25 135

原创 一次k8s docker下.net程序的异常行为dump诊断

朋友知道了他想确定的Instance.EnableFallback在第三方service运行的时候的真实值之后,也明确了他那边的应对这个webAPI的调用方式了。这次诊断的问题虽不是cpu过高、内存泄漏这类资源问题,但还是用上了与排查资源泄漏相同的底层调试诊断技术来解决。最后我的朋友很高兴,吃了个定心丸😃

2023-02-28 21:52:50 391 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除