原创 溫故知新,CSharp遇見AsyncLocal,在ASP.Net Core 6.0和2.1中HttpContextAccessor前後設計變化
HttpContextAccessor In ASP.Net Core 2.1 https://github.com/dotnet/aspnetcore/blob/v2.1.33/src/Http/Http/src/HttpContex
原创 乘風破浪,遇見最佳跨平臺跨終端框架.Net Core/.Net生態 - 深入OpenAI與馬斯克、微軟的祕密,通過API輕鬆接入ChatGPT
什麼是OpenAI https://openai.com OpenAI是一家人工智能公司,成立於2015年,總部位於美國舊金山。該公司的使命是研究和開發能夠產生廣泛影響的人工智能技術,並將這些技術傳播到整個社會。OpenAI由一些著名
原创 溫故知新,CSharp遇見IntPtr,通過System.IntPtr來操作句柄(Handle)和指針
句柄(Handle)緣來 .NET提供了一個結構體System.IntPtr專門用來代表句柄或指針。 句柄是對象的標識符,當調用這些API創建對象時,它們並不直接返回指向對象的指針,而是會返回一個32位或64位的整數值,這個在進程或系統範
原创 乘風破浪,遇見最佳跨平臺跨終端框架.Net Core/.Net生態 - 微軟開源組件Open-XML-SDK,解析Office文件
Open-XML-SDK https://github.com/OfficeDev/Open-XML-SDK Open XML SDK提供了用於處理Office Word、Excel和PowerPoint文檔的工具。 它支持以下情況
原创 乘風破浪,遇見最佳跨平臺跨終端框架.Net Core/.Net生態 - 泛型主機(Host),封裝應用資源和生存期功能
什麼是泛型主機 泛型主機(Host),又名通用主機,是封裝應用資源和生存期功能的對象。 一個對象中包含所有應用的相互依賴資源的主要原因是生存期管理:控制應用啓動和正常關閉。 其中包括: 依賴關係注入(DI) 日誌記錄(Logging) 應
原创 溫故知新,CSharp遇見調用方信息(CallerInfo),通過Attribute、StackTrace獲取調用方的信息
前言 有時候,想以最少成本的改造去記錄下當前方法調用來自哪個方法,以便獲取一些診斷線索。 基於Attribute獲取調用方的信息 internal class MyClass { public void Test() {
原创 乘風破浪,遇見最佳跨平臺跨終端框架.Net Core/.Net生態 - WPF應用插上Windows 11流暢設計系統的翅膀,ModernWpf=>WPF UI
前言 談到Windows 11流暢設計系統(Fluent Design System),我們不得不提到Mica材質,有了它才能算現代的流暢性UI。 前戲方案(ModernWpf) 之前聊過通過微軟未公開的DWM文檔來實現它,但是沒多久系統
原创 乘風破浪,遇見最佳跨平臺跨終端框架.Net Core/.Net生態 - WPF應用整合依賴注入(DI)、MediatR、CommunityToolkit.Mvvm
前言 之前一直用Stylet,寫過兩篇乘風破浪,遇見Stylet超清爽WPF御用MVVM框架,愛不釋手的.Net Core輕量級MVVM框架、乘風破浪,超清爽WPF御用MVVM框架Stylet,啓動到登錄設計的高階實戰,用這確實很爽,在MV
原创 乘風破浪,遇見未來新能源汽車(Electric Vehicle)之特斯拉中國召回事件,免費提供相關服務,對車齡或行駛里程無限制要求
召回事件 如果您的Tesla出現在某次召回名單中,我們將免費提供相關服務,對車齡或行駛里程無限制要求。 2022年11月15日,22V-844,TC-2022-651 描述 此次召回會影響某些2023年款Model3和2020-2023年
原创 乘風破浪,遇見未來新能源汽車(Electric Vehicle)之特斯拉歐洲和中東專供新顏色:快銀色(Quicksilver)、午夜櫻桃紅(Midnight Cherry Red)
特斯拉歐洲和中東專供新顏色 這兩個新顏色由德國柏林超級工廠(Giga Berlin)製造。 這兩種車漆只有特斯拉柏林超級工廠才能做,這是因爲柏林工廠配備的有專門爲噴塗許多精細油漆的車間,上海工廠沒有此種設備。 在定價方面,快銀選配價3000
原创 乘風破浪,遇見最佳跨平臺跨終端框架.Net Core/.Net生態 - 串口通訊設計,使用System.IO.Ports包實現串口通訊和監聽
什麼是串口通信 串口通信是串口按位(bit)發送和接收字節的通信方式。 串口通信(Serial Communications)是指外設和計算機間,通過數據信號線 、地線、控制線等,按位進行傳輸數據的一種通訊方式。這種通信方式使用的數據
原创 溫故知新,遇見宇宙最強Visual Studio,開發常用快捷鍵,幫助你提高速度
前言 今天遇到同事寫了很長的代碼,準備從某個位置開始替換,需要找個能從當前光標開始往後選中的辦法,看到了這些快捷鍵,收藏下。 刪除操作 刪除並粘貼到剪切板 Shift + Delete 感覺和Ctrl + X是一樣的效果。 刪除當前行
原创 溫故知新,CSharp遇見線程安全的併發堆棧(ConcurrentStack,後進先出)、線程安全的併發隊列(ConcurrentQueue,先進先出)
ConcurrentStack 併發堆棧(ConcurrentStack<T>)是線程安全的後進先出(LIFO)的集合。 特點 線程安全 後進先出(Last in, First out) 定義它 private static re
原创 溫故知新,遇見WPF/WinForms,界面過早觸發,導致WPF視覺樹元素未初始化出現找不到的情況(資源名稱區分大小寫)
報錯 今天在WPF中,從入口程序去引用一個類庫中的資源字典樣式,運行時提示找不到,但是設計時好好的,看了很久,遲遲找不到原因。 內部異常 1: Exception: 無法找到名爲“redBtn”的資源。資源名稱區分大小寫。 但是明明,我在
原创 乘風破浪,遇見上一代操作系統Windows 10 - Windows 10版本22H2,官方鏡像包(ISO)下載
前言 Windows 10,版本22H2(也被稱爲Windows 10 2022更新)是一個範圍廣泛的版本,專注於現有功能領域的整體Windows體驗的質量改進,如質量、生產力和安全性。對於運行Windows 10、20H2、21H1或21