EKsumic's Blog

let today = new Beginning();

Click the left button to use the catalog.

Sort By :
Default
UpdateTime
Reads
RSS  RSS
精選

原創 About me

This website has been in existence for a considerable period of time. And this blog is used to introduce some of the most basic information about this website and me ...

2020-01-12 07:25:42

8k+ 8408 reads

25 comments

精選

原創 「History」About this website

This article records the whole history of the website from the idea to the realization, and specifically records the major changes of the website, which are of milestone significance for the operation of the website ...

2020-01-28 00:38:52

10k+ 10694 reads

336 comments

精選

原創 [CONTENT] Learn JLPT N2 Grammar

[1] How to use "あげく"? "あげく"の例文 [2] Learn JLPT N2 Grammar: あまり(に)の例文 [3] Learn JLPT N2 Grammar: "以上"の例文 [4] What does "以上" mean? How to use "以上" correctly? [5] What's the difference between 一方で and 一方だ? How to use them? [6] Learn JLPT N2 Gra ...

2021-01-03 13:56:10

5k+ 5318 reads

0 comments

精選

原創 GitBash放棄本地修改並強制拉取遠端更新

這樣你的本地倉庫就會完全以遠端倉庫為準,並且本地的變更將被捨棄。如果有未提交的修改,請務必先確認是否備份需要的改動 ...

2024-09-17 13:12:16

951 reads

0 comments

原創 什麼是 dotnet ef migrations script?

在使用 Entity Framework Core(EF Core)進行數據庫管理時,我們經常需要更新數據庫的結構,而 dotnet ef migrations script 是一個非常實用的命令,專門用來生成 SQL 腳本。這篇文章將簡要介紹它的功能及常見使用場景。 什麼時候需要用到 dotnet ef migrations script? 當你需要把 ...

2025-01-28 17:22:30

10 reads

0 comments

原創 Entity Framework Core Code First 使用 MySQL 的常用命令總結

​以下是使用 Entity Framework Core Code First 搭配 MySQL 時最常用的命令彙總,幫助您快速掌握如何操作遷移和數據庫。 1. 創建遷移文件 用於生成遷移(Migration)文件,描述數據庫的結構變化。 Package Manager Console: Add-Migration [遷移名稱] 範例: Add-Migration InitialCreate .NET CLI: dotnet ef migrations add [遷移名稱] 範例: dotnet ef migrations add InitialCreate 2. 應用遷移到數據庫 將遷移應用到 ...

2025-01-28 17:08:19

11 reads

0 comments

原創 如何實現舊 URL 到描述性新 URL 的 301 重定向

在網站運營中,舊的 URL 結構(如 /MainPage/PreView/99)可能不夠簡潔和描述性,不利於用戶體驗和 SEO。而我們希望將其優化為新結構(如 /article/how-to-save-the-world),並通過 301 重定向 平滑過渡,將舊 URL 的 SEO 權重轉移到新 URL。本文將介紹如何通過 Nginx 和 Blazor 結合實現這一目標。 需求分析 舊 URL 的挑戰: 結構冗長,缺乏語義,不利於 SEO。 用戶無法通過 URL 判斷頁面內容 ...

2025-01-27 11:44:00

18 reads

0 comments

原創 如何使用 Nginx 實施逐步過渡,從 www 過渡到根域名

在網站運營中,你可能會遇到這樣的需求:現有網站主要收錄於 www.example.com,但希望逐步將域名過渡到根域名 example.com。這種過渡需要謹慎進行,避免影響 SEO 和用戶體驗。本文將介紹如何通過 Nginx 配置來實現逐步過渡,並解釋這樣做的好處。 為什麼選擇逐步過渡方案? 逐步過渡的方案 是一種穩妥的方式,可以在保留現有流量和 SEO 收錄的基礎上,逐漸將網站的權重轉移到根域名 ...

2025-01-27 10:48:09

20 reads

0 comments

原創 如何使用 Nginx 禁止 IP 直連,僅允許域名訪問

在使用 Nginx 部署網站時,可能會遇到這樣的需求:希望用戶只能通過域名訪問,而不允許直接通過 IP 地址訪問網站。本文將介紹如何通過配置 Nginx 來實現這一目標。 問題背景 當用戶通過伺服器的 IP 地址直接訪問時,可能會暴露伺服器的真實地址,甚至導致未經授權的訪問。為了解決這個問題,我們可以通過 Nginx 的「默認伺服器」功能來攔截所有 IP 直連請求,並僅允許通過特定的域名訪問網站 ...

2025-01-27 10:32:22

17 reads

0 comments

原創 為何在舊 IE 中讀得到值,而在 Chrome/Firefox/Edge 中失敗?

以下是一個簡化的範例:在 IE(尤其是比較舊版本、且在 Quirks Mode 下)可以正常讀取,但在 Chrome、Firefox、Edge 等現代瀏覽器中,會出現 undefined 或直接報錯。此例用的是舊式 document.myForm.myInput[0].value 這種語法,IE 會把它當作「集合存取」而湊合可用;但現代標準瀏覽 ...

2025-01-23 14:34:16

48 reads

0 comments

原創 在 Ubuntu 24.04 上部署 .NET 8 Blazor Web App

你是否在安装了最新的 Ubuntu 24.04 后,準備好上手部署一个 .NET 8 Blazor Web App?通過下列步骤,你可以轻松完成這件事! 1. 準備 Ubuntu 服務器 首先,確保你的 Ubuntu 服務器是最新版,並且安装了所有基礎工具 ...

2025-01-21 17:19:58

59 reads

0 comments

原創 解決 Nginx 中 "conflicting server name "_" on 0.0.0.0:80, ignored" 警告

這表示在你的 Nginx 配置中,有多個 server 块嘗試監聽相同的 IP 和端口(這裡是 0.0.0.0:80),並且其中至少有二個使用相同的 server_name 值為 _(即“匹配所有詢求”)。爲了避免衝突,Nginx 將選擇忽略其中一個。 以下將解釋如何解決這個問題,使你的 Nginx 配置更加清楚和穩定 ...

2025-01-21 17:14:21

68 reads

0 comments

原創 如何在 Ubuntu 24.04 上設置 UFW 防火牆和 SSH(準備操作)

在本文中,我們將介紹如何檢查和啟用 UFW 防火牆,以及設置 SSH 服務,確保您的 Ubuntu 24.04 系統更安全地運行。這些操作屬於基本的準備步驟,適合初步配置系統使用 ...

2025-01-21 15:06:35

73 reads

0 comments

原創 C# DbContext 的兩種寫法

在 .NET 和 Entity Framework Core 應用中,DbContext 有兩種常見的實現方式:標準構造函數與記錄型構造函數 (Primary Constructor)。以下是它們的比較與選擇建議 ...

2025-01-20 17:12:16

66 reads

0 comments

原創 如何在 Blazor 應用中檢測裝置類型(如行動裝置或桌面裝置)

發現在代網頁應用程式時,根據使用者的裝置類型(如行動裝置或桌面裝置)來調整使用者體驗是一個常見的需求。本文將教大家如何在 Blazor Server 中使用 IHttpContextAccessor 來檢測使用者的裝置類型,並根據檢測結果提供不同的呈現方式 ...

2025-01-19 15:40:26

75 reads

0 comments

原創 一個簡單的 SignalR Hub 示例

下面是一個簡單的 SignalR Hub 示例,包括服務器端和客戶端的基本配置與使用說明。 1. 服務器端 a. 建立 Hub 類別 首先,在 v2knowBlazor(Server)專案中新增一個 SignalR Hub 類別,例如 ChatHub.cs ...

2025-01-17 09:03:41

79 reads

0 comments

原創 .NET 8 混合 Blazor 應用:如何由 Server Host 客戶端

在 .NET 8 混合 Blazor Web App 模式下,你的解決方案通常包含兩個專案:一個伺服器專案(例如 v2knowBlazor)和一個客戶端專案(例如 v2knowBlazor.Client)。在這個架構中,實際運行應用程序的是伺服器專案,它同時負責 host 和提供客戶端的 Blazor WASM 應用 ...

2025-01-16 16:51:40

84 reads

0 comments

原創 Blazor 元件之間的傳值方式極簡總結

Blazor 中的數據傳遞主要通過以下方式:父組件向子組件傳遞參數:。 子組件向父組件通知事件:使用 EventCallback。 雙向數據綁定:通過 bind-。 多層嵌套數據共享: 全局數據:依賴注入 (DI)。 層級數據:Cascading Parameters ...

2025-01-16 16:22:36

85 reads

0 comments

原創 解釋「生命周期」的概念,以及 Singleton、Scoped 和 Transient 的含義

1. 什麼是生命周期? 在 Blazor 或 ASP.NET Core 中,服務的生命周期 指的是 一個服務實例的存活時間,也就是說: 從服務創建到釋放期間,它可以被重複使用多少次,或者被誰共享? 當我們註冊一個服務時(例如:builder.Services.AddScoped()),我們需要告訴系統: 這個服務應該存活多久 ...

2025-01-16 15:02:48

89 reads

0 comments

原創 如何將 Unity WebGL 專案部署到 IIS

Unity 構建時的注意事項 在 Unity WebGL 的構建過程中: 選擇壓縮格式: 推薦選擇 Gzip 或 Brotli。 啟用 Decompression Fallback: 勾選 Decompression Fallback,確保瀏覽器在無法解壓壓縮文件時可以加載未壓縮版本 ...

2025-01-13 20:18:08

99 reads

0 comments

原創 如何在 Blazor Web App 中實現關閉註冊並啟用唯一授權賬號

本文介紹如何在 Blazor Web App 使用獨立賬號驗證(Identity)並關閉用戶註冊功能,同時開啟唯一授權賬號功能。以下步驟包括修改註冊頁面、為特定賬號授權,以及在數據庫中檢查授權是否生效 ...

2025-01-08 16:11:18

135 reads

0 comments

原創 如何使用 UFW 配置防火壠保護服務器

防火壠(Firewall)是保護服務器安全的重要工具,可以有效阻止未經授權的流量,防範掃描和攻擊。本文將重點講解如何使用 UFW (Uncomplicated Firewall)配置防火壠規則,關閉不必要的端口並允許必要的服務,從而實現全面的安全保護 ...

2025-01-07 12:54:28

143 reads

0 comments

原創 Blazor <NavLink> 中的 Match 屬性詳解

在 Blazor 應用中,導航鏈接 是一個非常常用的組件,用於實現頁面的路由導航。 提供了一個 Match 屬性,允許開發者控制鏈接的激活邏輯。本文將詳細解釋 Match="NavLinkMatch.All" 和 Match="NavLinkMatch.Prefix" 的區別,並提供使用場景和最佳實踐 ...

2025-01-06 15:04:32

137 reads

0 comments

原創 解決 TortoiseGit 更新 .gitignore 文件後無反應的問題

內容: 當更新 .gitignore 文件後,TortoiseGit 的文件狀態有時無法即時更新,這是由 Status Cache 設定引起的。不同的緩存模式會影響文件狀態的檢查頻率和性能。 Status Cache 模式介紹 Default(預設) 使用內部緩存,加快狀態顯示。 適用場景:性能優先,文件變動不頻繁。 Shell Extended(推薦) 由 Windows Shell 提供更頻繁的狀態更新,立即反映 .gitignore 變化。 適用場景:頻繁修改 .gitignore 或需要即時文件狀態更新 ...

2024-12-17 16:58:25

245 reads

0 comments

原創 TortoiseGit 忽略規則不生效?切換「狀態緩存」解決問題!

在使用 TortoiseGit 時,你可能會遇到這樣的情況:即使你已經正確配置了 .gitignore 文件並忽略了某些文件夾(比如 bin 和 obj),它們依然被 TortoiseGit 標記為「未版本控制文件 (unversioned files)」。這讓人疑惑,到底是 .gitignore 問題,還是 TortoiseGit 自身的設定問題 ...

2024-12-17 10:19:42

218 reads

0 comments

原創 GitBash 使用 .gitignore 完整步驟

GitBash 使用 .gitignore 完整步驟 創建 .gitignore 文件 在你的 Git 倉庫根目錄 中,手動創建一個名為 .gitignore 的文件。 編輯 .gitignore 文件 在 .gitignore 文件中添加要忽略的內容,例如: bash 複製程式碼 # 忽略 Visual Studio 緩存和中間編譯文件夾 .vs/ obj/ # 忽略所有 .log 文件 *.log ...

2024-12-17 09:53:23

243 reads

0 comments

原創 GitBash如何修改已提交的 commit 訊息並推送到遠端

如何修改 Git 中的提交訊息(本地和遠端) 在 Git 中,如果你想修改已經提交的 commit 記錄上的 message(包括遠端),可以通過下面的方法完成: 修改最後一次的 commit message 並強制推送到遠端 ...

2024-12-17 09:32:22

238 reads

0 comments

原創 從 WinForms 到 Web:重用 App.config 的 Settings.Designer.cs 改造實踐

隨著軟件應用從桌面遷移到 Web 平台,開發者經常面臨如何在新的架構下重用現有代碼的挑戰。對於基於 WinForms 的桌面應用程序,Settings.Designer.cs 和 App.config 是一種常見的配置管理模式,然而,當這些代碼直接移植到 Wisej.NET 或 ASP.NET 的 Web 項目中時,會遇 ...

2024-12-05 17:24:08

289 reads

0 comments

原創 如何透過命令提示符在 Windows 10 建立訪客帳戶

Windows 10 預設不提供訪客帳戶,但透過命令提示符(Command Prompt)可以輕鬆創建一個擁有限制權限的訪客帳戶,供臨時用戶使用。以下是詳細操作教學: 操作步驟 開啟命令提示符(以管理員身份運行): 按下 Win + S,搜尋 cmd。 在搜尋結果中,右鍵點擊「命令提示符」,選擇「以管 ...

2024-11-28 15:08:49

283 reads

0 comments

原創 Access的Columns 集合字段说明

Columns 集合支持的列: TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME COLUMN_GUID COLUMN_PROPID ORDINAL_POSITION COLUMN_HASDEFAULT COLUMN_DEFAULT COLUMN_FLAGS IS_NULLABLE DATA_TYPE TYPE_GUID CHARACTER_MAXIMUM ...

2024-11-27 11:29:33

303 reads

0 comments

原創 C# 保存和提取實例化類的最佳方法

介紹 在開發過程中,我們經常需要保存一個類的實例數據到文件中,方便下次加載時可以直接還原它,而不是每次重新創建新的數據。 在 C# 中,這個過程可以使用多種方法實現,本文介紹三種主流的保存和加載方法: 二進位格式(BinaryFormatter):最快速,但文件不可讀。 XML 格式 ...

2024-11-19 10:07:13

367 reads

0 comments

原創 使用 C# 和 Aspose.Cells 移除 Excel 數位簽名並刪除特定工作表的完整範例

在這篇文章中,我將分享如何使用 C# 和 Aspose.Cells 移除 Excel (.xlsx) 文件的數位簽名,並且在文件中刪除特定工作表(例如 “Evaluation Warning”)。這段程式碼不僅展示了如何移除簽名,還演示了如何操作 Excel 文件以刪除特定名稱的工作表,這在處理 Excel 文件的自動化 ...

2024-11-11 10:58:47

381 reads

0 comments

原創 使用 C# 移除 Excel (.xlsx) 文件的數位簽名並自動刪除副本

在日常開發中,有時候我們需要從 Excel 文件中移除數位簽名。通常,為了保護原始文件不被直接修改,我們會先建立一個副本,移除副本的簽名後進行操作,最後再刪除這個臨時文件。本文將介紹如何使用 C# 和 Open XML SDK 來實現這樣的操作,並確保使用完副本文件後自動刪除,避免臨時文件 ...

2024-11-11 10:14:31

421 reads

0 comments

原創 在 Visual Studio 中管理多個 C# 項目和共享文件的實用指南

在開發大型 C# 解決方案時,有時需要多個項目共用同一份代碼文件或代碼庫。這篇文章將介紹如何在 Visual Studio 中管理多個 C# 項目,如何在項目之間共享文件,並解決項目配置中的一些常見問題。 1. 如何讓兩個項目共用同一個 .cs 文件? 當需要讓兩個項目共用同一個 .cs 文件時,最直接的 ...

2024-11-08 10:23:08

413 reads

0 comments

原創 C# 中的 #pragma 指令簡介

在 C# 中,#pragma 是用來控制編譯器行為的預處理指令,主要用於管理編譯警告和校驗文件一致性。雖然用法不多,但在處理自動生成代碼或外部庫時很有用。 1. #pragma warning 指令 #pragma warning 用於啟用或禁用特定警告,避免不必要的警告干擾。常用語法如下 ...

2024-11-07 16:51:22

380 reads

0 comments

原創 C# 中的 #warning 和 #error 指令:用法與場景簡介

在 C# 中,#warning 和 #error 指令用於在編譯時生成警告或錯誤信息,幫助開發者識別潛在問題或阻止不合適的代碼進入生產環境。以下是這兩個指令的簡單用法與應用場景。 #warning 指令 用法:生成一條編譯警告,不影響編譯過程。適合標記需要重構、未完成或有風險的代碼 ...

2024-11-07 16:24:33

378 reads

0 comments

原創 C# 中 # 指令的全面指南:預處理指令的簡潔應用

在 C# 中,# 符號引入預處理指令,用於在編譯期間控制代碼的特定行為。以下是 C# 中 # 指令的主要用法: 1. #define 和 #undef #define:定義一個符號,用於控制條件編譯。 #undef:取消一個已定義的符號 ...

2024-11-07 16:07:16

383 reads

0 comments

原創 C# 中 #define 和 #undef 指令的使用:基礎與應用

在 C# 中,#define 和 #undef 是用來定義和取消定義預處理符號的指令,通常用於條件編譯。通過這些符號,我們可以控制特定代碼塊在不同配置下是否被編譯。本文將介紹 #define 和 #undef 的基礎用法,並特別說明 DEBUG 這個預定義符號的行為 ...

2024-11-07 15:03:18

456 reads

1 comments

原創 如何安裝SignTool

最佳方式是安裝Windows SDK,如果你有安裝Visual Studio 2022的話,可以在其Installer裏選項添加Windows 10/11 SDK,然後更新。 SignTool所在路徑 SignTool (64-bit) will be located in the file path: C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64 SignTool (32-bit) ...

2024-10-31 09:57:42

489 reads

0 comments

原創 使用自簽名證書對應用進行代碼簽名的步驟

前言 代碼簽名可確保應用程式的來源和完整性,特別是在 Windows 環境下使用自簽名證書。本文將介紹如何使用 makecert 生成自簽名證書,並通過 pvk2pfx 轉換為 .pfx格式進行代碼簽名。 生成自簽名證書 使用 makecert 命令生成證書,例子如下 ...

2024-10-30 17:53:26

470 reads

0 comments