最近在項目中遇到一個需求,需要實現光盤刻錄功能,由于項目使用的是C#語言,網上查閱了很多資勞和偽代碼,很多都不能跑通,很多都是是引入了DLL后找不到方法,猜測應該是不同的版本導致的,經過一天的資料查閱和編寫調試,終于是調通了全部的功能,這里將關鍵的偽代碼分享如下。代碼中有注釋,對照著看就可以。 第一 ...
分析基于ASP.NET Core Kernel的gRPC服務在不同.NET版本的不同部署方式的不同線程池下的性能表現 使用默認的 gRPC 項目模板創建,垃圾回收器類型為 ServerGC(Server garbage collection)。 使用 ghz 工具在不同的請求總數、連接數、并發數的參 ...
奇怪的問題 本周被一個奇怪的問題困擾了一天。事情的起因是這樣的:在某個 PR 合并后,我拉了最新代碼,但是在我本地F5調試始終報錯。示例代碼如下: public interface Interface1 { void Method1(); } public class MockSerivce { p ...
開發中,我們通常把數據模型分為幾個部分,探討下他們具體都有那些作用。 1. Entity(實體) 實體類代表數據庫表結構,與數據庫表一一對應。 // 例如 User.cs public class User : BaseEntity { public string Username { get; s ...
在選擇數據結構時,性能取決于具體的操作和使用場景。列表(List) 和 字典(Dictionary) 是兩種常見的數據結構,它們有不同的性能特性。以下是對這兩種數據結構在不同操作下的性能比較,特別是針對 for 循環下的性能表現。 列表(List) 列表 是一種有序的集合,通常用于存儲一組元素,并按 ...
今天暫停了學習開發的任務,給咱放個假,去北京溜一圈,解解壓,把該玩的,想玩的地逛一逛,哈哈... 開發無止境,學習路還是很長...... 昨晚收拾了屋子,打掃好房間,洗衣拖地,算是春節假期提前打掃除了,,, 計劃出行就該給自己留足充足時間,今天差點趕不上高鐵,風風火火,一路火光帶閃電,哈哈哈,,, ...
.NET基礎 《C#入門經典》第7版 《CLR via C#》第5版 《深入理解C#》 《C#高級編程》第11版 《C#本質論》 《C# 7.0核心技術指南》第7版 《C#入門經典》 《C#編程魔法書》 .NET進階 《編寫高質量代碼:改善C#程序的157個建議》 《C#并發編程》 《C#多線程編程 ...
幾個月前換了新工作,從技術負責人的崗位上下來,繼續回歸碼農寫代碼,在新公司中,我不是技術負責人,沒太多的話語權。 公司這邊項目統一都是使用了SqlSguar這個orm,我也跟著使用了幾個月,期間碰見了不少奇奇怪怪的問題,甚至之前特意寫文章“罵”過,但是今天要聊的這個問題,至今快月余,依舊讓我記憶深刻 ...
如果不得不使用.Net Framework開發web api,可以參考本文。主要內容包括創建、屬性路由、配置Swagger、IHttpActionResult接口、.bat文件一鍵啟動、打包發布。 ...
做到物流分揀項目,處理格口數據報警狀態問題,使用了并行Parallel.ForEach。后面做了下幾個循環的效率,也記錄了一下; 循環體內不做任何事情 時,發現Parallel.ForEach更耗時。Parallel.ForEach不是并行的嗎,怎么會更耗時呢?顛覆了認知。。。。別急:這是因為循環體 ...
實體和值對象組成聚合,再根據業務,將多個聚合劃定到同一限界上下文,并在限界上下文內完成領域建模。 聚合只是單純將一些共享父類、密切關聯的對象聚集成一個對象樹嗎?如果是這樣,對于存在于這個樹中的對象,有沒有一個實用的數目限制? 既然一個聚合可以引用另一個聚合,是否可以深度遍歷下去,并且在此過程中修改對 ...
一:背景 1. 講故事 上個月在社區寫的文章比較少,一直關注的朋友應該知道那段時間被狗咬了以及一些瑣事處理,所以手頭上也攢了不少需要分享的案例,這段時間比較空閑,逐個給大 家做個分享吧,剛好年后為新版的 .NET高級調試訓練營 做案例儲備,所以抓緊時間瘋狂輸出吧! 這次生產事故的dump是訓練營里一 ...
前言 Material Design 是由 Google 開發的一套設計指南,提供統一的設計語言,使用戶界面更加直觀、美觀和一致。 Material Design In XAML Toolkit 是一個用于在WPF 程序開發中實現 Material Design 設計語言的開源界面控件庫。 項目介紹 ...
一、使用NuGet安裝Prism框架 二、構建ViewModel基類,注冊導航器,彈窗服務,事件聚合器,多語言,log4net日志 1、新建ViewModelBase基類,繼承自BindableBase, INavigationAware, IRegionMemberLifetime, IConfi ...
新建wpf頁面DataGridAutoView 引用空間: xmlns:ga="clr-namespace:WPFDemoMVVM.Helpers" <Window x:Class="WPFDemoMVVM.View.DataGridAutoView" xmlns="http://schemas.m ...
本文記錄在WPF應用中鼠標、觸摸混合輸入,鼠標事件抬起時不會有MouseUp事件觸發的問題。 事件輸入我們都知道有3類:鼠標、觸摸、觸筆,鼠標是windows系統出來就有的事件,后面加了觸筆、觸摸。 1.鼠標輸入,只會觸發Mouse冒泡隧道事件; 2.觸筆輸入,會觸發除了Stylus事件外,還會觸發 ...
樹莓派(Raspberry pi)是一款基于ARM 架構的單板計算機(Single Board Computer),可以運行各種 Linux 操作系統,其官方推薦使用的 Raspberry Pi OS 也是基于Debian開發的。因其低能耗、便攜小巧、GPIO等特性,可用于IoT應用開發。.NET可 ...
在一些復雜的項目中,往往會由不同功能的程序組成,且在程序運行期間,各個程序還需要進行互相通信,實現進程間通信的方式有很多種,最常用的就是通過消息中間件,比如RabbitMQ,Kafaka,以及ZeroMQ等,而RabbitMQ和Kafaka這兩款中間件往往都需要獨立安裝步驟才能使用,ZeroMQ卻不... ...
一:背景 1. 講故事 準備明年把.NET高級調試的訓練營的課程進行重構,采用案例引導式,而CPU爆高類有不少是程序員在寫代碼的時候不注意時間復雜度,在數據量稍微大一點的情況直接幻化成了死循環,時間復雜度這東西是學校的數據結構課程,有心的朋友在寫多層循環的時候腦子里面一定要過一遍,今天就給大家帶一篇 ...
最近需要制作一個類似桌面寵物的東西,碰到了這樣一個問題:受 MediaElement 支持的帶 alpha 通道的視頻格式有限,且后續還要接入相關的深度學習模型動態生成口型,大概率生成不了透明背景。這個該怎么辦呢?一個思路是把視頻抽幀摳圖,然后依次顯示透明背景的圖片(或者再組合成視頻播放)。另外一個 ...