有一天,我發現我的專案裡面居然有 Newtonsoft.Json
,可能有朋友會覺得,它是一個處理 JSON 很知名的套件,專案裡面有它有什麼好大驚小怪的? 可重點是我從來沒有安裝過它啊!
自從 .NET Core 3.1 開始內建 System.Text.Json 之後,我就再也沒有安裝過其他處理 JSON 的套件,那為什麼我的專案裡面會有 Newtonsoft.Json?我們來搞清楚這是怎麼回事?
有一天,我發現我的專案裡面居然有 Newtonsoft.Json
,可能有朋友會覺得,它是一個處理 JSON 很知名的套件,專案裡面有它有什麼好大驚小怪的? 可重點是我從來沒有安裝過它啊!
自從 .NET Core 3.1 開始內建 System.Text.Json 之後,我就再也沒有安裝過其他處理 JSON 的套件,那為什麼我的專案裡面會有 Newtonsoft.Json?我們來搞清楚這是怎麼回事?
過去在 .NET Framework 想要取得執行檔所在位置,我都是用 System.Reflection.Assembly.GetExecutingAssembly().Location 搞定,很少有無法正常運作的時候,但是到了 .NET Core/.NET
的時代,這個方法已經不再適用於多數情境了。
以往在 Json.NET 有 JToken
、JObject
、JArray
、JValue
這些類別,可以讓我們在反序列化 JSON 的時候,不必一定要為其結構新增對應的型別,2021 年 11 月 .NET 6 釋出之後,內建的 System.Text.Json 也隨之升級,增加了 JsonNode
、JsonObject
、JsonArray
、JsonValue
,與 Json.NET 的那四個類別相對應,那我想要在 .NET Framework 使用 System.Text.Json 行不行?
使用 CefSharp 在開發應用程式的過程當中,絕對跑不掉有需要偵錯前端程式碼的時候,但是 F5 按下去,只有辦法偵錯 C# 的程式碼,那前端的程式碼該如何偵錯?這篇文章就來介紹兩種在 CefSharp 開啟偵錯模式的方式。
上一篇文章我們簡單介紹了一下 CefSharp 的基本使用方式,直接在 WinForms/WPF 內嵌一個瀏覽器,基本上我們所有的程式邏輯都可以引入 JavaScript 套件,用 JavaScript 來開發,直接在瀏覽器端執行,但是這不代表我們不能把工作丟給 .NET 來做,必要時我們還是可以搭配 .NET 來平衡一下應用程式的工作負載,因此在 JavaScript 與 .NET 之間傳遞參數及回傳值就很重要了,這篇文章我們就來探究一下使用 CefSharp 套件,如何在 JavaScript 與 .NET 之間傳遞參數及回傳值?以及能夠傳遞的參數及回傳值的類型有哪些?
如果我們希望顯示在我們網站上的圖片符合一定的大小,一個方式是在上傳的時候就做嚴格控管,另外一個方式是在顯示的時候隨著我們設定的參數即時調整,我們選擇的解決方案是後者的話,那麼我們可以不用自己做,這篇文章要來跟大家介紹一個可以即時調整圖片大小、解析度,甚至裁切、翻轉、模糊化、上浮水印的一個圖床服務 - bunny.net。
即使 Unicode 發佈第一個版本至今已經超過了 30 年,現在我們還是得處理 Big5 編碼的文件,一個我們經常會遇到的情境,就是使用者上傳的 CSV 檔案是 Big5 編碼,而當我們使用 .NET Core 預設編碼讀取檔案的時候,會讀到亂碼。
這個是我最近處理的一個問題,使用者回報網站某個功能壞了,而且發現最近時不時網站會顯示 502(Bad Gateway)的畫面,雖然多重新整理幾次它就好了,但是這並不正常,我隨即捲起袖子開始一系列的追查動作,誓言一定要將兇手緝捕歸案。
在開發網頁程式我們最害怕的場景其中之一,就是我們的靜態檔案(*.js、*.css、*.png、...)後端已經更新了,但是在前端看到的依然是舊的版本,這個問題在 ASP.NET Core 我們可以透過一個 asp-append-version 的 TagHelper 來解決,它會自動地根據靜態檔案的內容產生一個含有雜湊值版本的網址,如果我們不透過 TagHelper 也想取得這樣的網址,我們要怎麼弄?
Playwright 是由微軟開源專案開發維護類似像 Selenium、Puppeteer、Cypress 的 WebDriver,它主打的是測試
,目前支援三大瀏覽器家族 Google Chrome / Microsoft Edge(with Chromium)、Apple Safari(with WebKit)、Mozilla Firefox,而且提供對測試友善的 API,讓測試人員在撰寫測試腳本的時候,可以更關注在 UI 的操作流程上,有需要對網頁進行自動化端到端測試的朋友,真的要試一下。