SharePoint 有項蠻酷功能,文件庫有個「在 Word/Excel 中編輯」連結,點下去可直接啟動 Word 或 Excel 開啟檔案: 反觀一般在網頁放 .docx、.xlsx 檔案 <a> 連結,都得儲存成本機檔案再開啟,流暢度輸了一截,讓我很不甘心,於是便研究了原理,發現我...

SharePoint 2016 文件庫提供線上編輯或以桌面版 Word/Excel 開啟兩種選項。線上編輯可直接用瀏覽器編輯較方便且支援多人共同修改,但功能及操作流暢度遠不及桌面版,因此要做粗活兒大家多半還是會開本機的 Word/Excel 作業,反正改完會自動儲存同步回伺服器端也很方便。 用本機 ...

分享前陣子用奇妙偵錯技巧解掉好氣又好笑低級茶包的故事。 有個網站功能用 WebAPI 呼叫第三方服務執行作業,平時不常用,某日接到報案回報功能異常,貌似呼叫 WebAPI 失敗,但錯誤訊息模糊看不出哪裡出了問題。該 WebAPI 用類似先前範例教學:使用 ASP.NET MVC 打造 WebAPI ...

先說說應用情境:我有個外部傳入的結構化資料需要套表產生 Word 表格,使用者預先做好範本 Word 檔,調好表格大小、文字對齊、字型顏色樣式... 等等: 理想目標是傳入包含編號、分類、廠牌型號、數量等屬性的物件陣列轉成 Word 表格。 using System.Collections.Gen...

大家應該有遇過 Word 文件最後多出空白頁,依經驗狀況分兩種:第一種很容易對付,純粹是文件結尾存在看不到的換頁符號或是段落,找到它們並刪除就好。參考:刪除空白頁 by 微軟支援;第二種麻煩些,如果你的表格長度剛剛好填滿最後一頁且不會超過,Word 似乎會自動在後面補上一個空白段落(Paragrap...

之前研究 PowerShell 中文編碼問題有個結論 - Windows 10 內建 PowerShell 5.1,在中文版 Windows 預設用 BIG5 編碼,PowerShell 6.0 之後會預設改用 UTF8。因此我一直以為 .\Do-Something.ps1 > output....

Word 有個保護文件功能,可限定只有特定欄位可以編輯,其餘部分唯讀,很適合設計表單供使用者填寫。參考:學會 Word 限制編輯與 Excel 保護工作表,給人填寫表單不出錯 by 電腦玩物 例如以下文件,就只有黃色部分可以填寫:(有人想要這張獎狀嗎?本站的小額捐款帳戶是... ) 但要注意,這種...

跟同事聊到一個需求,異動 Windows 資料夾權限前希望能保留整個資料夾(含子目錄)的原有權限設定,作為異動前後對照或萬一操作失誤的還原參考。 基本上就是記錄檔案總管資料夾內容的安全性頁籤,將各群組或使用者名稱及其對映的完全控制、修改、讀取和執行... 等權限儲存下來,但要用程式完成: 按慣例,...

有個使用 SSH.NET 連線 SFTP 交換檔案的排程,一登入便冒出錯誤 - Channel was closed 並立刻斷線,故意亂給帳號密碼則會出現 Permission denied (password),初步研判帳號密碼沒問題,錯誤另有原因。 爬文查不到明確方向,大致指向連線被伺服器切斷方...

這篇聊聊如何防止測試環境專用的特殊程式邏輯在正式環境被誤用? 實務上測試或開發環境與實際環境常存在難以克服的差異,為方便測試,有時我們需要加入一些測試專用的程式碼,例如:資料轉換、省略權限檢查... 等。 最不花腦筋的做法是直接把測試邏輯加進程式碼,上線前再記得拿掉。但老鳥都知道這樣一定有風險,一旦...

如果你很早開始寫 .NET Core 程式,有個節省寶貴 SSD 空間的小訣竅 - 移除不必要的 .NET Core SDK。 .NET Core/.NET 5 的 Runtime 或 SDK 採 Side-by-Side 安裝,新舊版會並存,新版會換掉 C:\Program Files\dotne...

由前陣子 lock + 共用靜態物件 vs 每次新建物件的效能案例,當新建物件成本不高且方法非 Thread-Safe 時,共用靜態物件加 lock 還不如每次新建物件有效率,該如何決策顯而易見。但如果新建物件的成本很高呢?若建構物件需要耗用大量 CPU 或記憶體,甚至得爭奪有限資源(固定數量的 S...

從 Log 或參數拿到成串未分行的 SQL 指令,或是查程式碼遇到複雜的 SQL 指令,會讓它規則化一點方便閱讀,除了手工整理,自動排版工具也是種選擇。 例如以下這段縮排、大小寫無規則的 T-SQL:(我猜有 Coding-Style 潔癖的人會想把作者的頭扭下來) ;WITH SupportCTE...

專案裡有個需求,希望當使用者輸入字串為日期或日期時間時自動轉成 DateTime 型別,我想到用 DateTime.TryParse 來做(註:更嚴謹的做法是改用 DateTime.TryParseExact 正向表列所有支援格式,但我選擇借用 TryParse 內建的彈性較省事),目標是要能支援多...

.NET 5 是微軟最新推出的程式開發平台,要在個人電腦上執行用 .NET 5 開發的程式,先安裝 .NET 5 所需要的執行環境(術語叫 SDK 或 Runtime)通常會比較方便,以下將介紹如何在 Windows 安裝 .NET 5 執行環境。 .NET 5 可支援的作業系統如下,基本上除非你還...