[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