SharpIcoWeb開發記錄篇 前言 大佬用.NET 9.0開發了SharpIco輕量級圖標生成工具,是一款控制臺應用程序,支持AOT發布,非常方便。 ? 功能特點 ? 將PNG圖像轉換為多尺寸ICO圖標 支持生成包含自定義尺寸的ICO圖標(最高支持1024×1024) 檢查ICO ...
從C#9開始,可以使用record關鍵字來定義一個具有不可變屬性的引用類型,編譯器會為該類型生成大量的模板代碼。C#10以后,record struct用來定義值類型,record class或record用來定義引用類型。 record(C# reference)這篇官方的文檔中,介紹了recor ...
一、前言 前面的課程我們實現了矩形、圓形的拖動,以及不同形狀間的連線,在實現的過程中,很多讀者都發現并提出來了存在顯示質量差有鋸齒、拖動不流暢還閃爍等問題,作為承上啟下的一節課程,我們本節就來看一上如何解決這些問題。 相信看完的你,一定會有所收獲! 本文地址:https://www.cnblogs. ...
本文將會從基礎到高級,從簡單到復雜的順序,告訴大家如何調試 dotnet 系應用,特別是桌面端應用。本文將會向大家介紹使用 VisualStudio 大量的功能用來提高調試效率,穿插著也會介紹一些好用的調試輔助工具,以及如何編寫方便調試的代碼,期望大家通過閱讀本文能有所收獲 ...
PDF文件因其高度的跨平臺兼容性和安全穩定的格式特點,廣泛應用于企業文檔管理和電子資料傳輸中。隨著PDF文檔頁數和內容復雜度的增加,拆分PDF成為優化文檔處理流程、提升辦公效率的重要需求。通過編程方式實現PDF拆分,不僅能自動化處理海量文檔,還能根據需求精準提取指定頁面、按頁碼范圍分割,甚至基于關鍵 ...
.NET中好用的MongoDb ORM很少,選擇也很少,所以我打造了一款適合SQL習慣的MongoDb ORM,讓用戶多一個選擇。 1、 MongoDB ORM教程 1.1 NUGET 安裝 SqlSugar.MongoDbCore SqlSugarCore 1.2 已支持功能 單表CRUD+分頁+ ...
芯片測試中 檢查 LDO 電壓(Low Dropout Regulator Voltage) 是一個非常關鍵的環節,用于驗證芯片內部或外部 LDO 是否正常輸出穩定的電壓,為核心模塊提供可靠電源。 1.什么是 LDO 電壓測試 LDO(低壓差線性穩壓器) 通常存在于芯片內部,用于將外部較高電壓(如 ...
一:背景 1. 講故事 本篇是系列的最后一篇,我們從跨平臺部署和自定義診斷的角度跟大家聊一聊 dottrace,希望對大家有所啟發。 二:跨平臺和自定義診斷 1. 如何跨平臺診斷分析 如果 dottrace 只能在 windows 平臺上跑,那確實不值得寫一個系列,目前它可以橫跨三大平臺(Windo ...
基于SharpIco開發圖片轉ICO工具網站 SharpIcoWeb 項目介紹 SharpIcoWeb是基于SharpIco開發的圖片轉ICO工具網站,支持上傳png、jpg等圖片轉換為多尺寸的Ico圖片文件。采用前后端分離技術。 后端接口使用 .NET Minimal API開發,夠輕量。 ? ...
泛型(Generics)是C#中的一種強大的強類型擴展機制,在申明時用“占位符”類型參數“T”定義一個“模板類型”,比較類似于C++中的模板。泛型在使用時指定具體的T類型,從而方便的封裝、復用代碼,提高類型的安全性,減少類型轉換和裝箱。 ...
一:背景 1. 講故事 現如今的很多代碼都是awaitasync+Task的方式,對它們進行性能洞察非常有必要,awaitasync 本質上就是將狀態機塞入到 Task 的 m_continuationObject 延續字段上,和 ContinueWith 沒有本質區別,這一篇我們就來聊一聊。 二: ...
在開始之前說明一下,你不要指望閱讀完本文后會得到光,就算得到光你也未必能變成迪迦。本文老周僅介紹原理,可以給部分大伙伴們解惑。 咱們都知道,在派生 DbContext 類時,集體類的集合用 DbSet<TEntity> 表示,而咱們最常用的方法是在 DbContext 的派生類中公開 DbSet<T ...
一:背景 1. 講故事 分析托管和非托管內存暴漲,很多人潛意識里都會想到抓dump上windbg分析,但我說可以用dottrace同樣分析出來,是不是聽起來有點讓人驚訝,哈哈,其實很正常,它是另辟蹊徑采用底層的ETW機制,即開啟 windows 底層日志,所以 dottrace 可以做,官方血統的 ...
public class GlobalService { private static IServiceScope? _currentScope; private static readonly Lazy<string> _serverAddress = new Lazy<string>(GetSe ...
一:背景 1. 講故事 在我分析的眾多dump中,有一些CPU爆高是因為高頻的拋 Exception 導致,比如下面這張圖,有 19 個線程都在拋 xxxResultException 異常。 從卦中雖知大量異常的痕跡,但從嚴謹的角度來說,最好再卜一卦,就是用 perfview 或者 dottrac ...
芯片測試中“由 MCU 下載程序,測試芯片內部接口、FLASH 等情況并反饋結果”通常是在生產測試(ATE)或板級測試(ATE-BIT/BIST)階段使用的一種自測試(BIST)機制,主要用于驗證芯片功能是否合格,特別適用于 射頻芯片、SoC、MCU 芯片 等具有 Flash 或外設的器件。 1.整 ...
一:背景 1. 講故事 寫這一篇是因為昨天看 dottrace 官方文檔時,在評論區看到了一條不友好的評論,截圖如下: 雖然語氣上帶有些許憤怒,但說實話人家也不是無中生有,作為 dottrace 的忠實粉絲我還是能夠理解他的心情的,所以這篇我用最新的 2025.01 版 dottrace 來演示一下 ...
一、前言 上一節我們實現了在矩形與矩形之間添加連線,光是矩形太單調了,某些問題也暴露不出來,我們本節就來看一下,如何添加一個圓形,且支持圓形與圓形、圓形與矩形、矩形與矩形間的連線。在這個過程中我們會發現一些問題,這些問題我們后續課程會進行處理,大家也請帶著自己的思考和理解去看。 相信看完的你,一定會 ...
Linq(Language Integrated Query,集成查詢語言),顧名思義就是用來查詢數據的一種語言(可以看作是一組功能、框架特性的集合)。在.NETFramework3.5(大概2007年)引入C#,用統一的C#語言快速查詢各種數據,如數據庫、XML文檔、對象集合等等。Linq的誕生對... ...
在wpf開發中,你有沒有需要用到這樣的場景,比如:在父窗口顯示表單的輸入的內容,然后再進行一些處理邏輯等,表單可以很復雜,也可以很簡單,下面我就以示例代碼來做一個demo展示。 1.父窗口界面展示如下: <Window x:Class="WPFDemoMVVM.View.UserInputView" ...