The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

建立 Node.js 使用 ESM 搭配 TypeScript, ESLint 與 VSCode 的專案範本

我在兩年前曾經寫過一篇如何快速建置一個 Node.js 專案並使用 TypeScript 與 VSCode 進行開發文章,由於現在的 Node.js 大多以 ESM 為主流,TypeScript 也更新到 5.x 版,而且當時的 TSLint 也都被換成 ESLint 為主了,所以這篇文章就來更新一下內容,幫助大家更方便、更快速的建立一個支援 TypeScript, ESLint, VSCodeESM 並搭配 esbuild 的專案範本。

... 繼續閱讀 ...

如何使用 .NET Core 串接 e 政府服務平臺單一登入暨多因子驗證機制

我記得我最早在 2008 年就因為一個標案串接過 e 政府服務平臺的單一登入機制,事隔多年後,竟然什麼也沒有變,還是一樣透過 SOAP Web Service 來進行驗證。今天這篇文章我就來說說如何透過 .NET 7 實作 e 政府服務平臺的單一簽入機制,以及說明如何用 .NET 呼叫以 SOAP 為基礎的 Web Service 服務。

... 繼續閱讀 ...

使用 Data API builder 快速實現安全的 CRUD 應用程式

微軟最近推出了一個開發工具叫 Data API builder (DAB),這是一套開源的資料處理引擎,他可以快速的將資料庫的資料轉換成 REST 與 GraphQL API 端點(Endpoint),方便我們快速的建立安全的 CRUD 應用程式。有了 Data API builder 之後,針對大多數 CRUD 類型的應用程式,幾乎都可以在幾分鐘之內完成 API 開發,只要使用一些前端框架就可以快速的建立一個完整的應用程式。

... 繼續閱讀 ...

如何使用 SharpToken 計算不同 OpenAI 模型在送出提示詞時的 Token 數量

由於大多數 LLM 模型都有 Token 數量的限制,因此我們在開發 Generative AI (GAI) 應用程式時,都會對 Token 的用量斤斤計較,因此我們需要一個可以計算 Token 數量的函式庫,而在 .NET 世界裡 SharpToken 套件不但可以對文字進行編碼(Tokenize)與解碼,還可以用來計算文字的 Token 數量。今天這篇文章我就來介紹這個好用的 NuGet 套件。

... 繼續閱讀 ...

認識 C# 7.2 與 .NET Core 2.1 推出的 Span<T> 結構

其實 C# 的 Span<T> 結構已經問世很多年了,直到昨天有同事問我這個東西要怎麼用,我就把多年前做好的簡報給他研究,然後順便複習一下這個厲害的玩意。

... 繼續閱讀 ...

如何使用 SqlBulkCopy 大量匯入資料到 SQL Server 資料表中

最近有個維護案需要定期匯入百萬筆記錄到 SQL Server 之中,客戶的原始廠商在後台是有寫了一個功能可以讓後台管理員上傳 Excel 檔案,然後透過程式一筆一筆新增到資料庫中,但這個匯入的過程竟然要花上 1.5 小時才能新增完畢,實在是太慢了。其實從 .NET Framework 2.0 開始,在 System.Data.SqlClient 命名空間下就有個 SqlBulkCopy 類別可以用來高效率的大量寫入資料到資料表中,其寫入速度可能快上 50 倍之多!

... 繼續閱讀 ...

使用 .NET 實作 TOTP (Time-based One-Time Password) 的注意事項

前陣子在研究 TOTP (Time-based One-Time Password) 的實作方式,發現還蠻容易的,這篇文章我就來記錄一下實作的注意事項。

... 繼續閱讀 ...

介紹好用套件:PaLM.NET (透過 .NET 呼叫 PaLM API 服務)

這幾天在玩 Google 新推出的 MakerSuitePaLM API 服務,在研究的過程中我發現官網幾乎沒有提供 .NET 的範例程式,所以我就在研究的過程中順手寫了一個 PaLM.NET 類別庫,透過我寫的這個類別庫可以非常輕鬆的呼叫 PaLM API 服務,快速打造 Google 全新的 Generative AI 應用程式。

... 繼續閱讀 ...

如何變更 ASP.NET Core MVC 的預設 HtmlEncoder 的編碼範圍

我們公司這幾年由於專案大多都是前後端分離的架構,所以很少用 ASP.NET Core MVC 來開發網站,但最近公司有個專案用到 ASP.NET Core MVC 框架,看到了一段 Code 覺得很陌生,所以就研究了一下,這才發現 ASP.NET Core MVC 在處理 HtmlEncode 的時候,預設的編碼範圍跟 ASP.NET MVC 有些不同,這篇文章就來記錄一下這些技術細節。

... 繼續閱讀 ...