我們最近有個維護案,其技術架構是採用已經 EOS (產品結束支援) 的 .NET Core 2.1 版本,由於客戶沒有預算可以升級框架版本,所以只能持續在現有的不受支援的 .NET Core 版本上新增功能。因為本次專案需求正好要用到一個支援 .NET Standard 2.0 的 MeiliSearch 套件,理論上應該支援 .NET Core 2.1 的,但卻遇到了無法編譯的狀況。本篇文章我就來說說這種狀況的解決方法。
... 繼續閱讀 ...
有時候我們會希望從本機硬碟安裝 NuGet 套件,有時候則是想要安裝公司內部發行的 NuGet 套件,我發現許多人都會透過 Visual Studio 去調整全域的 nuget.config
設定檔,但這樣很容易造成你在開啟其他不同專案的時候會無法成功還原套件的情況。另一方面,我們在 CI 的環境中,若需要指定自訂的 NuGet 套件來源,通常也都是透過建立 nuget.config
的方式來指定。這篇文章我將來說明如何在方案或專案中建立 nuget.config
檔案,並將該檔案加入到版控之中。
... 繼續閱讀 ...
如果你在 Azure Artifacts 建立一個 NuGet 來源,由於所有存取 Azure Artifacts 上的 NuGet 套件都需要經過身分認證,如果你用的是 Visual Studio 就沒啥問題,更新到 Visual Studio 最新版就能搞定所有問題。但如果你用 Visual Studio Code 或 .NET CLI 進行 NuGet 操作,例如透過 nuget restore
或 dotnet add package
等命令,就會開始出現問題。這篇文章將說明如何正確設定,讓日後的 NuGet 操作都不再出問題。
... 繼續閱讀 ...
前陣子有個同事的案子發生一件詭異的問題,在自己的主機上透過 Visual Studio 2013 與 IISExpress 開發與測試都還正常,但只要部署到測試機或正式機,就是沒辦法順利執行,卡關許久之後找我協助。我發現錯誤訊息確實很「一般」,訊息是:「無法載入檔案或組件 'LinqToExcel' 或其相依性的其中之一。 試圖載入格式錯誤的程式。」或是英文版的「Could not load file or assembly 'LinqToExcel' or one of its dependencies. An attempt was made to load a program with an incorrect format.」。如果你也遇到類似的問題(很有機會遇到),那麼你應該繼續看下去。
... 繼續閱讀 ...
我們在 Visual Studio 2012 裡面會使用 NuGet 管理員管理那些常用的開發函式庫,例如 jQuery、Json.NET、 EntityFramework、ELMAH、… 等等。各位可能也了解到,目前 jQuery 最新版為 2.0.2 版,這個最新版基本上僅支援 IE9 以上瀏覽器 ( IE8 以下不支援 ),因此大部分人應該都不會選擇安裝最新版的 jQuery,但是在使用 NuGet 安裝或更新套件的過程中,卻有可能不小心將 jQuery 套件自動升級到最新版,導致網站發生許多相容性的問題。今天這篇文章主要就是說明如何手動將 jQuery 降級到 1.x 的版本。註: 此方法適用於任何 NuGet 套件,所以若要指定降級版本,都可以參考這篇文章。
... 繼續閱讀 ...
幾乎在任何一種版本控管的機制裡,都會遇到那些「不應該簽入到版本庫」的潛規則,以往我們在用 SVN 的時候,我就寫過幾篇文章要大家注意這點。最近都改用 TFS 做版控,因為大多使用 Visual Studio 作為主要開發工具,那些不需要的檔案被簽入 TFS 的機率大幅降低。但是,任何可能會發生的問題總是會發生 (墨菲定律第一條),前陣子就真的有人把一堆不該簽入的檔案都簽入到 TFS 裡,不緊緊導致空間浪費,更進一步影響其他人建置專案,因此有在使用 TFS 的人還是必須注意一下。
... 繼續閱讀 ...
我覺得要學習開發工具的使用,透過影音的方式觀摩學習應該是再好不過,因此我也經常到國外網站學習外國人使用工具的方式。前陣子替 MSDN 錄製的活用 Visual Studio 2010 擴充套件教學影片終於完成也上線了,我一共的錄製了五集,裡面集結了我最常用也最實用的擴充套件,各位可以看到我如何利用工具提升開發效率,無論 Visual Studio 2010 的新手或老手都可以當作參考,希望對大家有幫助。^_^
... 繼續閱讀 ...
我們之前常遇到一個狀況,當開發人員把方案/專案被建立並加入到 TFS 進行版本控管後,然後很開心的使用 NuGet 功能加入套件,不過卻忘記把 packages 也一併加入到 TFS 原始碼控管裡,以致於其他開發源開專案時變的無法管理 NuGet 套件的情況,這個問題到了 NuGet 1.6 開始已經獲得了改善,你現在可以使用 Enable NuGet Package Restore 功能徹底解決這個問題。
... 繼續閱讀 ...
以往我們要使用一些現成的工具函式庫時,都會去網路上找一些好用的原始碼回來用,但是當作者改版或修掉一些 Bugs 之後我們並不會主動收到通知,就算是公司內部的函式庫一樣會有版本控管的問題,但是若能透過 NuGet 來幫忙做控管,未來所有專案都能夠享受到自動更新這些工具函式原始碼的服務,而最近就興起一個 netfx 專案整理了許多小片段的原始碼,讓你可以輕易的將這些原始碼透過 NuGet 套件管理員下載到專案中,並可在未來自動更新,方便管理這些下載的原始碼。
... 繼續閱讀 ...