.NET Core 如何调试 CPU 爆高?

在这篇文章中我们将会分析一个 CPU 爆高的案例,测试demo链接 :https://docs.microsoft.com/en-us/samples/dotnet/samples/diagnostic-scenarios/ 。

你将会学到:

  1. 如何使用 dotnet-counters 确定真实的 cpu 使用率。

  2. 使用 dotnet-trace 追踪代码。

  3. 使用 PerfView 寻找问题代码并解决。

    阅读剩余部分

从 MVC 到使用 ASP.NET Core 6.0 的Minimal API

https://benfoster.io/blog/mvc-to-minimal-apis-aspnet-6/

2007 年,随着 ASP.NET MVC 引入了其他语言中变得司空见惯的模型-视图-控制器模式[1],并为其提供原生支持,.NET Web 应用程序开发有了极速的发展。

2012 年,也许是由于 ReSTful API 的日益流行,借鉴了 ASP.NET MVC 的许多概念又引入了 ASP.NET Web API,这是对 WCF 的重大改进,使开发人员能够以更少的仪式构建 HTTP API,。

后来,在 ASP.NET Core 中,用于构建网站和 API 的单一框架,这些框架被统一到了 ASP.NET Core MVC 中。

阅读剩余部分

.NET 最好的图片工具(裁剪、缩放、加水印)IUtility

前言

支持.Net Core(2.0及以上)与.Net Framework(4.5及以上)可以部署在Docker, Windows, Linux, Mac。

图片的裁剪、缩放、与加水印,是任何系统经常要用到的功能,它们现已集成到IUtility工具中,使用十分简便。

裁剪

现给出一张“原图”,如下:

阅读剩余部分

Winform重绘单选、多选控件

前言

对于单选和多选框这两个控件的使用场景还是比较多的,但是在Winform中有一个很奇怪的现象:基本上所有带可选择功能的控件,这个选择框都不能单独调整大小,所以就会导致很多时候字体较大,但是选择框是真的小,特别是在现在高分辨率的屏幕下,甚至还得去找......如果是在触摸屏上使用的话,估计你已经抓狂了;

所以,在之前的文章中,有针对DataGridView的选择框做过一次重绘;这一篇就单独用来重绘下这两个控件,即RadioButtonCheckBox

阅读剩余部分

.NET 序列化生成 JavaScriptSerializer Poc

0x01 现状

dot.NET安全矩阵星球群有位师傅问起如何才能生成和ysoserial一样的JavaScriptSerializer序列化poc,同Json.NET一样序列化使用了ObjectDataProvider类,ObjectInstance属性绑定实例化的Process对象,这里没有使用MethodParameters属性传递参数,而是使用ProcessStartInfo类FileName和Arguments属性承载外部传入的命令,知道了原理我们尝试序列化出Ysoserial这段攻击载荷,但实践时总抛出异常 System.Reflection.RuntimeModule的对象时检测到循环引用。

阅读剩余部分