2023/02/28

[Visual Studio 2022] v17.5 新功能 - Dev Tunnels 開發人員通道

開發網站專案,若是要暫時展示開發進度,要想各種方法把網站對外開放。不管是架在測試機,或是佈署到雲端,又或是透過 ngrok 或自架 nginx 伺服器反向代理。目前在 v17.5 版本中可以輕易達到了。

必要條件

  • Visual Studio 2022 v17.5 版本 (Visual Studio for Mac 不支援)
  • 啟用開發人員通道預覽功能
  • 僅支援 ASP.NET Core 網站專案 (一個或多個)

2023/02/27

[macOS] PHP 7.4 在 Homebrew 近期更新升版後發生 Library not loaded 錯誤

問題

在月初更新了 PHP 的版本,而最新版本來到了 PHP 8.2。近期開發的專案都以 PHP 8.1 為主,也並未發現異常。剛好最近在修改舊專案,是跑在 PHP 7.4 的版本,這時才發現無法正常運作。

[Visual Studio 2022] v17.5 新功能 - Markdown

在 Visual Studio Code 已經用得很習慣的 Markdown 編輯預覽,終於也在 Visual Studio 2022 出現了。

只能說 VS Code 把編輯器功能做得太棒,養大了開發者的胃口,在編輯器都有的功能,怎麼能在地表最強 IDE 沒有呢?

搭啦~ 不用開外掛,預覽 Markdown 內建囉!

Markdown 預覽

開啟任何 *.md 的檔案,即可看到 "Preview" 按鈕,點擊即在右方出現預覽內容,或是按快速鍵 Shift+F7 開啟預覽

以後不用再多開 VS Code 來編輯 Markdown 了

[Visual Studio 2022] v17.5 新功能 - Quick Add New Files 快速新增檔案

前言

過去在 Visual Studio 要新增檔案都要在目錄上按右鍵再一層一層增加目錄或檔案,著實沒有效率。

超希望在 Visual Studio Code 新增檔案的方式能夠出現在 Visual Stduio 上。

在 Visual Studio v17.5 版終於把這項功能補上了,甚至比預期的更加方便及好用。

2023/02/26

[Visual Studio 2022] v17.5 新功能 - ASP.NET Core 輸出整合內建 Terminal

前言

有在開發 ASP.NET Core 網站的朋友們,在 Visual Studio 上開發時,應該對於那個跳出來不能關掉的 Console 視窗感到很煩。

若是本身就用 VS Code 來開發或是原先就在 Terminal 下操作,是不會有這種困擾的。

一直想敲碗很久的功能,終於在 v17.5 的版本聽見開發者的許願~

現在能把 output 到外跳出來的視窗導到內建的 Terminal 視窗去囉。

2023/02/25

[Visual Studio 2022] v17.5 新功能 - All-In-One Search 全域搜尋

前言

在操作工具,最大的困擾除了要能快速找到檔案或資料,另一個就是本身功能的設定。 VS Code 的出現,及它的方便查詢文件及功能設定真是深得我心。 有在用 JetBrains 家族工具的朋友應該很熟悉 Shift+Shift。 在 Visual Studio 最常用的也是 Ctrl+T 或 Ctrl+Q,而在最新的 Visual Studio 2022 v17.5 終於給了個全域搜尋功能。

2023/02/20

[.NET] 升級 ASP.NET MVC 至 ASP.NET Core MVC 的注意事項

前言

繼上篇 如何使用 .NET Upgrade Assistant 升級舊 ASP.NET MVC 專案 所遇到的升級問題再做一個小小的注意事項筆記

網站檔案路徑

在 ASP.NET MVC 可以透過 Server.MapPath() 來指定在伺服器上的路徑

例如:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        string docsPath = Server.MapPath("~/docs");

        //...
    }
}

而在 ASP.NET Core MVC 需要經由注入 Microsoft.AspNetCore.Hosting.IWebHostEnvironment 來讀取環境變數

例如:

public class MyService
{
    public MyService(IWebHostEnvironment env)
    {
        string docsPath = $@"{env.CotnentRootPath}/docs";
    }
}

2023/02/19

[.NET] 如何使用 .NET Upgrade Assistant 升級舊 ASP.NET MVC 專案

問題

進入 .NET 7 的今日,手邊仍有許多舊的專案,要如何將舊專案升級呢?

微軟提供了 .NET Upgrade Assistant 工具來協助升級舊專案。

讓我們一起來一步步升級吧!

升級專案

舊專案環境:

  • ASP.NET MVC 5.2.9
  • .NET Framework 4.7.2

想要升級目標專案至 .NET 7

2023/02/06

[npm] 如何檢查 npm 全域套件是否更新至最新版本

問題

趁著更新 macOS 的版本,也順便把一些開發工具更新一波。

檢查 npm 全域套件是否為最新狀態

  1. 可直接執行下列指令來作檢查
npx npm-check-updates -g
  1. 安裝 npm-check-updates 這個全域套件來作檢查

其實初次呼叫第一個方法即會詢問是否安裝 npm-check-updates 套件

npm install -g npm-check-updates     

檢查指令 (執行結果與第一個方法相同)

ncu -g 

2023/02/05

[Mac] 解決更新 macOS 後,在 Terminal 執行 command 時出現 xcrun 錯誤訊息

問題

今天在更新 macOS 後, 在終端機執行 command 時出現 xcrun 錯誤。

訊息如下:

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

解決方法

重新安裝 Xcode Command Line Tools 即可

xcode-select --install