搜尋此網誌

2024年3月19日 星期二

ASP 選擇性啟用 Validator

緣起:


    我有負責一個案子的會員登入頁,不久前為了過無障礙,有幫登入頁的每個 TextBox 都加了一個 ASP 的 RequiredFieldValidator,我用一個簡化的 login 頁面模擬情境


2024年3月13日 星期三

C# DLL 專案與 DLL 內的檔案讀取

緣起:


    我們公司的程式有個專案,它是一個 DLL 專案,用來管理一些前後台會用到的 js、css、image 資源,只要 build 完,它就變成一個 DLL 檔,資源都包含在裡面。如果那個專案裡的檔案有被新增或修改,到時要更新的話就只要搬 DLL 檔去覆蓋就好,非常的方便。

    把東西都包進 DLL 裡,然後再寫個 class 當個介面來存取 DLL 檔的資源,感覺是個很實用的做法,所以想學起來。

    這篇想要寫個測試的小程式來達到跟我們專案一樣的功能,從 DLL 裡把檔案給取出。

2024年3月11日 星期一

C# NPOI 套件與 ASP WebForm 下載 xls 檔

緣起:


    最近有完成一個緊急任務,修改購物車的訂單匯出功能,那個功能的初版是我們主任寫的,它會把 sq的訂單資料寫到 excel 檔案裡,讓用戶可以下載。

    我注意到程式裡有用到一個叫 NPOI 的套件,程式都是用它來處理 Excel 檔。學起來感覺會蠻有用的,所以就特別為它寫了這篇文章來記錄。

    我會先用 Console 專案來測試 NPOI 的基本功能,然後再寫一個 WebForm 的專案,讓使用者點擊頁面上的按鈕後可以下載 xls 檔。

2024年3月8日 星期五

Windows CMD forfiles

緣起:


    公司最近有資安事件,需要我們去砍掉站台下的某些檔案,有要我們下這個指令

    forfiles /p {路徑} /s /m {名稱} /c "cmd /c del @file"


    頭一次看到這個指令,看起來蠻實用的,所以想在這邊紀錄一下它的用法。

2024年3月6日 星期三

C# FileStream 與 ASP HttpPostedFile

緣起:


    這幾天在看我們程式的信箱功能程式碼,注意到它有上傳附件的功能,上傳完的附件會傳到後台,還會專門開個資料夾放那些附件。蠻特別的,它不是傳到 ws 主機,然後再把檔案路徑記到資料表。

    我注意到在上傳檔案的部份,它有用到 Request.Files 來取得使用者上傳的檔案,然後讀取檔案、把檔案給寫到 Server 端的資料夾的部份則是用到 C# 的 Stream。覺得這些功能蠻實用的,而且自己好像也還沒實際寫過從前台上傳檔案到 Server 的程式,所以就試著寫了一次,順便紀錄。

2024年3月4日 星期一

git remote prune origin

緣起:


    我們公司在開發程式是用 Visual Studio C#,版控是用 Azure DevOps。在多人的專案上,remotes/origin 那邊的分支有時會比較多,在擷取 remotes/origin 的 master 分支時,它都會一並把其它人新增的分支給抓下來,但當那個分支在 server 上被砍掉時,我們自己主機上的 remotes/origin 卻不會自動幫我們砍,會陰魂不散的繼續待在那邊,時間久了就會累積不少,手動一個一個砍也蠻麻煩的,所以不久前就有去查 remotes/origin 那邊的分支要怎麼自動砍。

    參考這篇文章,很簡單,只要下個 git remote prune origin 即可,如果不放心的話,還可以加個  --dry-run 的參數試跑,看看有哪些分支會被砍掉。


    在這邊做個簡單的紀錄。