[C#] .Net 下操作 Excel 新選擇 EPPlus - 建立 Excel 檔案,讀取 Excel ,寫入公式,計算公式讀取公式
[C#] 一個輕量化的Database - LiteDB 中索引 ( index ) 的相關測試
今天主要不是寫程式,主要是測試 LiteDB 到底對於索引的處理結果,我這邊有三個測試 collection
FRIEND1- 一百萬的資料沒有做索引
FRIEND2- 前50 萬筆建立好後,製作索引,後面再寫入 50萬筆
FRIEND3- 一百萬筆資料建立好後,再建立索引
[C#] 一個輕量化的Database - LiteDB 中的 關聯式操作 : DbRef
[C#] 一個輕量化的Database -LiteDB 製作 List<Object>屬性索引查詢的最佳方法
上一篇文章 說到 LiteDB 製作索引(index) ,百萬資料測試查詢篇,後來我有測到一個東西
就是我對屬性是 List<Object> 中的 某一屬性進行查詢,是不是可以做索引 (index) ,
答案是可以的,但是要直接做到 List<Object> 中要被查詢的該屬性..
[C#] 一個輕量化的Database - LiteDB 大檔處理 _files,_chunks
如果是測試 Database 我也很好奇,LiteDB 是怎麼處理大型檔案格式的,看了一下
你將大檔案寫入該資料庫中,他會規畫一區讓你放檔案,有一張表負責記錄你放入啥檔案,另外一個 他稱之為 chunk 的
主要是會把檔案切割,每 255KB 切一段
[C#] 一個輕量化的Database - LiteDB 中 Shared Connection + Parallel.For 測試修改一筆資料
[C#] 一個輕量化的Database - LiteDB 關於 Transation 的測試 Commit , Rollback
[C#] 一個輕量化的Database - LiteDB 各種查詢姿勢
最近因為在測試 LiteDB ,所以這邊筆記幾個查詢方法,可以方便自己之後可以快速的回憶起來要怎麼寫
下面主要就是列舉幾種查詢資料的方法,最後一個測試比較久因為我查詢了 物件中的 List<Object>
裡面的屬性並且使用 %LIKE%
[C#] 一個輕量化的Database - LiteDB 關於 BsonValue 轉回物件問題
今天來說一個在嘗試 LiteDB 的時候遇到的錯誤,因為該套件的底層是使用 BSON ,所以在還原回物件的時候
他預設都是 LiteDB.BsonValue ,因為我直接下一個查詢語法後直接使用 Json.NET , SerializeObject 的時候直接出現錯誤
Unhandled exception. Newtonsoft.Json.JsonSerializationException: Error getting value from 'AsBoolean' on 'LiteDB.BsonValue'.
---> System.InvalidCastException: Unable to cast object of type 'System.String' to type 'System.Boolean'.
at lambda_method23(Closure, Object)
at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
--- End of inner exception stack trace ---
[C#] 一個輕量化的Database - LiteDB的簡介與使用
[C#] .NET8 - SHA3-256 操作遭遇的平台問題
最近在看 .NET 8 新功能,最近好像多了 SHA3_256 ,因為之前在弄區塊鏈的東西,其實都是使用套件
BouncyCastle 套件,但是現在 .NET 8 好像已經內建有支援,想說來測試一下,結果出現了
Unhandled exception. System.PlatformNotSupportedException: Operation is not supported on this platform.
at System.Security.Cryptography.SHA3_256.TryHashData(ReadOnlySpan`1 source, Span`1 destination, Int32& bytesWritten)
at System.Security.Cryptography.SHA3_256.HashData(ReadOnlySpan`1 source, Span`1 destination)
at System.Security.Cryptography.SHA3_256.HashData(ReadOnlySpan`1 source)
at System.Security.Cryptography.SHA3_256.HashData(Byte[] source)
標籤: .Net , .Net8 , .NetCore小筆記 , C#
[C#] .NET8 - Dictionary、FrozenDictionary、HashTable的性能對決
最近在看 .NET 8 新功能,有一個東西有點興趣 就是 FrozenDictionary ,想說他跟傳統的 Dictionary 有啥不同
畢竟 .NET 8 是以輾壓級效能做為賣點 ,看了一下官方這段話的介紹
以效能為焦點的類型.NET 8 引進數種旨在改善應用程式效能的新類型。
新的 System.Collections.Frozen
命名空間包含集合類型和 FrozenDictionary、
感覺使用上就是拿來可以放在記憶體中快速索引的好東西,直接用 BenchmarkDotNet 跑一下
標籤: .Net , .Net8 , .NetCore小筆記 , C#
[.Net8]從AOT到dotnet publish:在Raspberry Pi 3上成功運行.NET 8 Web API的步驟
最近因為要佈署一些 基於 .Net8 的Web API 到 Raspberry Pi 3 上面跑,因為 .Net 8 AOT 無法在上面執行
所以還是得安裝 dotnet 8 runtime ,因為我不死心我直接把程式碼放上去編譯,我原本是在 x64 電腦編譯後放過去
結果無法執行起來即使我 chmod+x 也沒用,但是放上去 透過 dotnet publish 後發現
標籤: .netcore , ASP.net , C# , Native AOT , Raspberry Pi , RPi , WebAPI
[.Net][RPi] 將.NET 8搬上Raspberry Pi 3的操作指南
最近很訝異,因為我在 一台舊舊的 Raspberry Pi 3 上面執行起來一個 .net 8 的程式
雖然玩 Pi 也是有些年頭了,但是我沒有在上面面跑過 .Net 到是 Chromebook 我之前有在上面寫過 ASP.net 的小專案
重點是 因為我跑的機器是 Pi 3 ,我比較訝異,因為到了 Pi 4 性能上都有爆發成長都可以裝 Win11 了
這次我測是跑的專案是 這個 之前寫的 Console ,然後就放到 Pi3 上面跑跑看竟然成功了
所以分享一下步驟
標籤: .Net8 , Native AOT , Raspberry Pi , RPi
[C#] 理解以太坊 HD 錢包生成:解密 BIP39 規範與單字驗證,無效助憶詞
[.Net] 優雅的效能評估:BenchmarkDotNet讓測試變得輕鬆愜意
今天介紹一個我腿了很久的東西,就是 BenchmarkDotNet ,有時候我們會必須要測試一個 function 或是某個新功能的效能
直接就是來個暴力跑個 Parallel.For 然後 在跑之前使用 Stopwatch 來測試,有時候看論壇都會出現一些在 console 中票票釀釀的表格
原來有一個套件可以解決,用起來也是非常的溫馨
標籤: .Net , .Net8 , .netcore , .NetCore小筆記
[C#] 探索 ASP.NET Core Web API 中的 Native AOT功能 MapPost
最近在看 .Net 8 的東西,看起來多了一些新東西,我再開專案的時候看到這個 ASP.NET Core Web API (Native AOT)
可以使用最小單位來製作 Web API ,因為我很喜歡在小裝置上面搞事情就想說來玩一下
標籤: .Net8 , ASP.net , C# , Native AOT , WebAPI
[C#] 比特幣冒險:掌握BRC-20標準及Witness資料的抽取技巧
最近幣圈風風火火關於比特幣銘文(Ordinals),這時候要說到 BRC-20,我相信前幾年如果你有聽過 NFT 或是乙太幣,應該對這名詞覺得有點熟悉但是又陌生
BRC-20 是一個實驗性的比特幣同質化代幣標準,由推特用戶 @domodata 於 2023 年 3 月 8 日基於 Ordinal 協議創建它類似於以太坊的 ERC20 標準,
規定了比特幣上發行代幣的名稱、發行量、轉帳等功能BRC-20 代幣可以通過 Ordinal 協議在比特幣網路上鑄造和轉移
如果您對 BRC-20 代幣等虛擬貨幣感興趣可以看看下面這影片,說的是淺顯易懂
標籤: .Net7 , ASP.net , Bitcoin , BlockChain , Ordinals
[C#] String 中 Environment.NewLine 關於 \r\n 的判斷
最近遇到一個奇妙的問題紀錄一下,因為公司的專案慢慢地從 .Net Framework 轉成 .NET 6-8
遇到一個很小很小的問題,就是在 string 中的 \r\n 的判斷在 .Net Framewok 和 .Net Core 3.1 以上版本解讀是不一樣的
標籤: .Net , .Net8 , .NetCore小筆記 , C#
[C#] 簡單測試 ThreadStatic ,一個可以瞬間了解的範例
最近在玩一些東西,看到一個有趣的東西,已經出來很久了,但是最近才看到覺得很有趣
但是看了一下官方範例有點看不太懂,之後自己測試一下才發現原來是這樣設計使用的
就是一個 Attribute 叫做 [ThreadStatic]
[C#] 簡單計算 RSI 相對強弱指數
最近再研究 BTC 的一些指數,有一個東西叫做 RSI (相對強弱指數 是一種技術分析指標,用於即時價格波動的速度和幅度。)
因為需要這指數判斷一些東西,後來上網查一下,似乎不是很困難,所以筆記一下
給之後有需要用到的人..
[Javascript] 製作 div 的反差色,解決上面文字顏色的問題
最近在處理一些前端的東西,遇到一個問題,就是假設設計在一個 <div> 有 background-image 是可以讓客戶更換的
但是,在這 <div> 上面有文字,文字有顏色,如果可以設定一張純白,純嘿,或是花花綠綠的圖該怎麼辦 ?
標籤: ASP.net , Javascript
[Google 試算表] 取得 Bitfinex 上面的 數字貨幣價格
最近在看一些資料,順便回答一下朋友問的問題,他主要是透過 Google Sheet 來管理他的虛擬貨幣資產
但是他需要知道價格,我直覺地回他使用 GOOGLEFINANCE 這個 function ,但是他要抓的那個虛擬貨幣代碼是 GOOGLEFINANCE
沒有提供的,這時候該怎麼辦,只好自己寫一個 函式..
標籤: 虛擬貨幣 , GOOGLE , Javascript
[Javascript] 網路離線依然可以顯示資料 Service Worker 簡單實作
今天測試一個東西,解開我很久的疑惑,為何有些網站在我沒有網路的情況下,依然可以顯示一些資訊
有的是顯示你現在正在離線,或是有的依然變成一個資訊孤島依然還是可以查資料,正常狀況下不是應該都會顯示
[C#] Console.WriteLine 出現?? ,亂碼顯示問題
簡單記錄一個很白癡的事情,測試程式常常使用 Console.WriteLine 但是竟然
會出現 ?? ,後來我才發現,原來預設的不是 UTF8 就會導致這樣
我測試文字
当麻测试测试123简体中文とうま
[Trick] 指定不同程式使用不同網路(WIFI , LAN )
最近算是找到一個方法解決一個問題,之前沒有認真去找過,今天找一下測試一下才發現可以用,主要目的在於
我電腦有接線的網路,也有 WIFI,兩個 對外 IP 不一樣,因為一些操作我有的應用程式需要用到 A 網路,有的應用程式用到 B 網路
這就很麻煩了,因為通常他都會預設使用有線網路,我就在想我有沒有辦法找到 某個應用程式指定使用 WIFI 網路
網路上找到一個關鍵字 ForceBindIP
[Javascript] 關於一個 select 的 multiple 的處理
最近在處理一項需求時,遇到了一個讓我感到驚訝的情況,但仔細思考後發現其實只是我自己的誤解。這也是一個比較少用到的情境。
在HTML規範中,select元素有一個multiple 的屬性,詳細可參考這裡。儘管多選通常可以使用input checkbox來實現,
但在前端處理上會稍嫌繁瑣。因此,有時我會建議客戶使用select的multiple="multiple"屬性,特別是在手機上,操作體驗相對更為舒適。
標籤: ASP.net , HTML , Javascript
[Javascript] 使用 Keydown 事件實現輸入框值的同步支持負數小數點
主要遇到,客戶希望再輸入一個 價格的時候,其他欄位的價格可以預先填寫好,如果他修改過價格後就不能再被更改
這需求感覺蠻常碰到的,但是客戶要求很直觀,等於我就是只能從 Keydown 事件下手,今天,我們將探討如何使用 JavaScript 中的 Keydown 事件來實現這樣的需求
標籤: ASP.net , HTML , Javascript
[Javascript] 實做鍵盤方向鍵的左右鍵連續點擊
最近我遇到業主一個需求,需要在網頁上實現按下鍵盤方向鍵左鍵和右鍵時執行相應的動作。在尋找相應的解決方案時,
發現 Javascript 並沒有提供直接的方法,於是我嘗試使用一種古老的方法,即利用時間差來達到按兩次快速點擊的效果。
標籤: ASP.net , HTML , Javascript
[Web] 一些產生 Avatar 方便的網站,透過網址就可以產生的獨立 Avatar 圖片
最近在測試一些前端的東西,我需要用戶的 avatar ,所以我的需求是
透過網址就直接能夠生出一張可愛或是勘看的圖片,所以網路上找一下,因為都是要自己手動生成
所以我把一些找到的整理一下
[Javascript] input 輸入處理:限制只允許輸入英文、數字和橫線 (-) 並自動轉換為大寫
最近我遇到了一個 JavaScript 的問題,雖然不是什麼大事,但對方需要在一個 input 欄位中,只允許輸入英文、數字和橫線 (-)。
此外,他希望輸入小寫英文字母時自動轉換為大寫。儘管這聽起來有些簡單,但每次都需要重新寫一次,因此我想將這個解決方案記錄下來。
這裡是我所使用的方法:在 onKeypress 事件中使用正則表達式(regex)進行輸入阻擋,
確保只有英文、數字和橫線 (-) 能夠進入。接著,在 onKeyUp 事件中,我將輸入的文字轉換為大寫,確保統一的輸入格式。
值得一提的是,我在網路上看到了一個使用 CSS 的方法,即使用 style="text-transform: uppercase"。
這樣可以讓輸入的字"看起來"是大寫,但在取值時仍然是小寫。雖然這是一個簡單的做法
但需要特別注意。如果在送出前將值轉換為大寫,也是一種方便的解決方案,避免使用 onKeyUp 的方法。
標籤: ASP.net , Javascript
[Facebook] 關於出現 "應用程式網域必須符合 Facebook 網頁遊戲網址(https) 、行動網站網址、 Unity 二進位網址、網站網址或安全粉絲專頁頁籤網址的網域。" 的問題
今天記錄一次遇到的狀況,交叉比對很久才找到
一個關於臉書 ( facebook ) 的開發上面遇到的問題
應用程式網域必須符合 Facebook 網頁遊戲網址(https) 、行動網站網址、 Unity 二進位網址、網站網址或安全粉絲專頁頁籤網址的網域。
[C#] ASP.net 出現 InvalidOperationException: Invalid non-ASCII or control character in header: 0x5132 的錯誤
在 Web 開發的演進中,我們經歷了從 WebForm 時代到現在的 .Net 6 時代,而在這過程中,一些原本看似簡單的操作,卻可能因為技術的進步而產生一些意想不到的變化。
以前在 WebForm 時代,我們經常使用 ResponseRedirect 這樣的方式進行頁面跳轉,而且往往並不會遇到太多問題,
例如直接使用 ResponseRedirect("/sample.aspx?meg=儲存成功") 就能夠順利地將用戶導向指定的頁面,同時傳遞一些必要的參數。
然而,最近在使用 .Net 6 開發時,卻意外地遇到了一個 InvalidOperationException: Invalid non-ASCII or control character in header: 0x5132 的錯誤。
[C#] 判斷五行相生相剋
今天分享一個不是很重要的東西,只是剛好用到,就筆記一下
主要是因為最近在看五行的相生相剋,大概規則是
相生:木生火、火生土、土生金、金生水、水生木。
相剋:木剋土、土剋水、水剋火、火剋金、金刻木。
[HTML] 一個可以提升 mailto 體驗的小技巧 (僅電腦使用)
最近看到一個很有趣的東西,可以取代 mailto 的使用,如果下 mailto 的指令
現在人其實已經很少安裝信件軟體了,大部分都是用 Web Mail ,我這邊大部分都是使用 Gmail
這時候關於點到 mailto 都會出現
關於錯誤 Compiler Error Message: CS0433: The type 'ASP.global_asax' exists in both 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET
最近在移植一些專案遇到這個問題
Server Error in '/' Application.
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: CS0433: The type 'ASP.global_asax' exists in both 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\64203716\99481ad\App_global.asax.lldgsdpc.dll' and 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\64203716\99481ad\assembly\dl3\1fdcbdce\1ebebc9e_08a0d901\App_global.asax.DLL'
[C#] 呼叫 PowerShell 取得 Windows Event 4624 的 JSON 資料
最近,因為一些事情我需要 去檢測關於 Windows Event 4624 的事件 ,剛好 黑暗執行緒的一篇文章,我就想說
可以透過這方法來做到,不過黑大是使用 PowerShell ,這東西對我來說是一個完全完全陌生的領域,不過我就想黑大都分享了
那我可以使用黑大的分享,然後我透過程式端去抓就可以達到我的需求,果然是一個及時雨
標籤: .Net , C# , PowerShell
[C#] Telegram.Bot v19 - 使用 SendPoll 發動投票,處理投票問題
今天繼續 Telegram.Bot v19 ,應該是最後一篇了,畢竟其他功能也不是常用到
這範例主要是,對於在群組中舉辦一場投票,然後可以收集票數,也可以知道誰投了那些答案
這主要是用在群組中會比較有用,當然你也可以一個一個去發不過只是搞死你自己而已..