原创 C# 按字節截斷字符串

trim string to the specified number of bytes 把字符串轉成字節數組後,截斷至特定長度時,可能會導致尾部亂碼,可以使用以下方法進行安全截斷  @@@code foreach (var encod

原创 Macrium Reflect 取代ghost

 簡介 參考:如何創建和還原系統映像備份與Macrium反射-百度經驗 (baidu.com)  下載 https://www.macrium.com/reflectfree?mo 安裝器下載後直接默認安裝即可,有時會不能下載,多試幾次

原创 AdvancedInstaller生成後自動創建ISO虛擬光盤

添加屬性 添加生成事件 @@@code C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy RemoteSigned -File "d:\s

原创 在VS擴展工具中使用powershell腳本發佈 dotnetcore單一文件

參考:dotnet publish 命令 - .NET CLI | Microsoft Docs 最近使用VS2019和VS2022,發佈 AOT時,總是提示失敗,要好幾回才成功,沒得辦法,自己搞吧,反覆重試總是能成功的,改改就可以在持續集

原创 WCF post json and return json

在WCF restful 服務中POST json 動態對象並返回JSON動態對象 參考閱讀 (42條消息) 【WCF】WCF RESTful(二)——搭建一個REST的服務_哈士奇-CSDN博客  源碼 @@@code [Operati

原创 給Remote Desktop Connection Manager加上密碼

Remote Desktop Connection Manager默認使用本地用戶加密,當系統重裝時密碼丟失,此外打開RDG文件不需要驗證碼,操作系統被 入侵後,可以直接打開RDG文件獲得其它服務器的訪問權。 增加的功能: 使用AES加密R

原创 Netcore webapi action swagger response返回參數使用匿名類型

問題:action中返回匿名對象時,swagger只能按強類型生成返回值描述 解決辦法:使用roslyn在內存中動態執行代碼,使用json.net反序列化匿名對象,向swagger返回動態匿名對象 效果:        Swaager

原创 工廠模式中的泛型接口

Java @@@code public interface DataBodyFormatter<T> {    void Serialize(ByteBuf writer, T value, Version version);    

原创 字符串轉換注意編碼

就如同浮點數轉換會出現精度丟失一樣,字節與字符串的轉換也會出現自作聰明的結局,雖然看起來一樣,但未必 是你喜歡的那個人了 @@@code var bs = new byte[16] { 120, 104, 0, 0, 0,

原创 Sql server 2014 同一數據庫換名還原,導致同名庫一直處於還原狀態

 同名數據庫換名稱還原出現上述問題,通過生成的還原語句發現,實際上是在對日誌處理時導致的問題,SQL SERVER認爲需要對源庫處理日誌,但這個源庫實際上是另一臺服務器上的,結果把本機的同名源庫給幹 了 現象  @@@cod

原创 Powershell 修改組策略

 參考:https://blog.51cto.com/infosec/788731 參考:http://intsir.com/index.php/archives/351/ 參考:https://www.windowspasswords

原创 EF CORE中複雜類型的映射

實體映射時,遇到複雜類型,可選擇下述方法處理: NotMapped,跳過映射 在複雜類型上聲明 [Owned],但僅限該複雜類型是全部由簡單值類型組成的 自定義序列化方法  示例: IPInfo使用了owned,對IPEndPoi

原创 Parallel.ForEach 之 MaxDegreeOfParallelism

參考:Max Degree of Parallelism最大並行度配置 結論: 與設置的線程數有關 有設置的並行度有關 測試如下: @@@code System.Threading.ThreadPool.SetMinThread

原创 DotnetCore 單文件發佈

NETCORE3.0開始,可以發佈單文件,參考https://www.cnblogs.com/ZaraNet/p/11790645.html 發佈後(config目錄 是手工複製進去的)  運行時,先解壓釋放至臨時目錄  

原创 Quartznet速記

1、XML配置 參考: CronTrigger withMisfireHandlingInstructionDoNothing——不觸發立即執行——等待下次Cron觸發頻率到達時刻開始按照Cron頻率依次執行withMisfireHan