[C#] 一個無聊的冷知識關於已知運算常數編譯後的MSIL

2023-02-06


寫一個有趣的小東西,大概算是 C# 冷知識,大概就跟台灣本島最北的國際機場是桃園中正機場而不是松山機場一樣冷知識

今天好奇問同事一個問題 假設我要 1+2+3+...+100 這答案

1. 我手動打 return 1+2+3+4+5+...+100; 

2. 我用迴圈  for (var i = 1; i <= 100; i++) 最後 return sum; 

3. 用梯形公式解  return ((1+100)*100)/2 

這三個到底 哪一個執行比較快


[C#] 使用 iCal.NET 產生 .ICS 行事曆事件+鬧鐘


雖然已經  21 世紀了,我也不知道為何業主非常喜歡 .ICS 這東西

不過,沒辦法收費辦事情,之前,我是自己大概看一下規格後自己產生,

但是最近客戶要做一些改動需求,不能夠這麼單幹了,查詢了一下,有一套一直有在更新的套件 Ical.Net


[C#] 在執行期下取得所有用到的套件版號資訊

2023-02-04

最近跟同事在測試一個 .NET Core 3.1 跟 .NET 6 的套件問題

我們再抓到底當時候用哪一個套件所產生的錯誤,因為我們一值 Nuget 換不同版本測試

這時候我們必須要知道到底現在(執行期)用的套件是哪一個版本

所以今天簡單筆記一下,就是在執行期的時候抓取所用的 package 版本



[C#] 關於MemoryCache GetOrCreate 遇到 thread-safe 的問題


同事 Roger 碰到一個小雷,跟我說過後,決定記錄一下

因為一些專案的緣故,開發環境是 ASP.NET Core  6 他使用的 

Microsoft.Extensions.Caching.Memory.MemoryCache 

但是在大量用戶存取(非同步) 的時候造成 Exception 


[C#] 判斷某個時段有沒有壓到另一個時段

2023-02-03

關於時間問題,這我在專案中寫過多次每次寫都要重新考慮一次

這次就索性整理一下,然後就是直接複製貼上,懶得重寫

簡單的說因為常常寫訂單系統,就是有像是家教那樣他假設 12:00~13:00 有課,所以他的客戶不選擇這時段

這時候程式怎麼判斷時段有沒有壓到


[C#] 關於 JsonConvert.SerializeObject 的 二三事 - 如果 List 是空得(非null) 就不顯示

2023-02-02

最近遇到的一個問題,就是關於 Json.NET 的  SerializeObject 的顯示問題

其實一般狀況下我就是直接無腦的  JsonConvert.SerializeObject(object)

但是,最近在維護一個系統因為物件要改成 Nullable 就有點麻煩,所以看看能不能直接再 SerializeObject

解決盡量的不使用 Attribute 或是改寫 Nullable 去解決



當麻許的超技八 2014 | Donma Hsu Design.