Visual Studio 2019之要不要試試SLNF?

本文關於VS2019的技巧適用於大型項目的開發,如果僅僅是小型項目的開發,大概率可以跳過本文。

大型項目有多大?

你遇到的使用VS開發的解決方案(Solution)最多的包含多少個工程?十多個,上百個還是上千個?這個應該是根據項目的內容和複雜度決定的,每個人遇到的情況都不一樣。所以我也不知道這個問題的答案。當一個VS解決方案(Solution)中包含了過多的項目(Project)時,那麼架構師就應該考慮是不是應該拆分項目為不同的解決方案。在我的開發經歷中,我遇到的最大的一個Solution包含了200多個項目(Projects)。那麼當你打開一個包含很多Projects的Solution時,你的感受是什麼?

對,就是慢!

SLNF是什麼?

微軟也意識到了這個問題,並在VS2019中提出了一種解決方案。假設我的Solution當中包含了若干項目,如下圖所示。其中ClassLibrary1是我不關心的項目,那麼該怎麼辦呢?

Visual Studio 2019之要不要試試SLNF?

請發揮想象,你正在工作於包含了200多個項目的Solution當中

首先你可以Unload這個Project,如下圖所示

Visual Studio 2019之要不要試試SLNF?

從VS2019中Unload一個項目

之後可以右鍵單擊Solution文件,這樣就可以選擇"Save As Solution Filter"。

Visual Studio 2019之要不要試試SLNF?

生成SLNF文件

下次你就可以雙擊打開這個保存的SLNF文件,確保你只打開你關心的項目。

Visual Studio 2019之要不要試試SLNF?

通過SLNF來加載項目

如果需要查看已經Unload的項目,任然可以通過右鍵菜單

Visual Studio 2019之要不要試試SLNF?

顯示所有未加載的項目

這樣效果就會如下圖所示,可以對unloaded的項目進行加載。

Visual Studio 2019之要不要試試SLNF?

包含未加載項目的解決方案

提示

  • 請確保你加載的項目對未加載的項目沒有依賴。否則可能加載失敗或build失敗。
  • 如果你需要隱藏的項目比較多,可以在打開一個SLN文件是選擇Do not load project,之後再load需要關心的項目。
Visual Studio 2019之要不要試試SLNF?

風一樣的速度,因為不加載任何項目

SLNF的內容

SLNF依然是文本文件(JSON格式),具體的內容如下圖所示。

Visual Studio 2019之要不要試試SLNF?

SLNF內容

當然,如果需要的話,你依然可以將其上傳到代碼管理平臺,比如Git,和其他小夥伴共享你的設置。這樣前端開發,後臺開發,測試人員都可以只加載自己關心的項目。又或者,你該考慮重構幾個不同的解決方案了(Solution)?

作者關於VS2019的文章






分享到:


相關文章: