跳到主要內容

發表文章

目前顯示的是 12月, 2020的文章

Asp.Net Core Web 專案發佈到 IIS

 首先建立一個新的專案, 選擇 Asp.Net Core Web 應用程式, 按下一步 接著我都不改, 直接用預設值, 按建立 接著我選Asp.Net Core 5.0 以及 MVC 範本(方便測試看結果), 如下紅色框框, 按建立 專案建好後, 展開[建置]的菜單, 點選 [發佈 XXXXXX] 之後點選發佈到 [網頁伺服器IIS], 按下一步 再來直接用 [Web Deploy] 方式來發佈網站, 按下一步 接著輸入如下圖紅色框框部分 "localhost" 代表本機, "Default Web Site"(字字之間有空格)則是 IIS 的預設網站名稱(必須一樣, 如下圖紅色框框), 接著按完成 完成之後先別急著按發佈, 先按[編輯]進去, 裡面有連線測試, 如下圖紅色框框 進去編輯畫面按下[驗證連線]按鈕, 如下圖紅色框框 之後按鈕右邊會出現訊息"提高權限執行msdeploy", 點擊這字會告訴我們要用"系統管理員模式下啟動Visual Studio" 接著儲存專案後, 將 Visual Studio 關閉, 在 Visual Studio 2019 上按下右鍵, 點選[更多], 再點選[以系統管理員身分執行] 會出現警告視窗, 問"是否允許App變更您的裝置", 按下[是] 接著開啟剛剛的專案, 於菜單中選[建置], 再選[發佈], 開啟發佈視窗後再選[編輯], 再按一次[驗證連線]按鈕, 按鈕右邊就會出現綠色勾勾, 表示連線成功, 按下[取消]或是[儲存]關閉編輯的畫面 接著按下[發佈]的按鈕 Visual Studio 發佈完成後, 會自動開啟 IIS 上的網頁, 因為網頁的網址變成 localhost 了, 但是出現錯誤的畫面, 如下圖 去 Google 搜尋 "asp.net core IIS" 可以查到微軟的一篇文章  在使用 IIS 的 Windows 上裝載 ASP.NET Core  裡面有教很多東西, 其中有提到要在IIS上使用  Asp.Net Core 就要去一個連結  目前的 .NET Core 裝載套件組合安裝程式 (直接下載)  下載安裝 ASP.NET Core Hosting Bundle,  下載 dotn

Asp.Net Core Debug Source Code

寫過Asp.Net Core Web MVC應該知道裡面要使用很多的Middleware,如果要知道裡面的運作方式,就要看Source Code,或者想知道自己寫的程式哪裡出問題,有時候就必須Debug進Source Code中看變數的變化 如何Debug Source Code我是參考 DEBUGGING ASP.NET CORE 2.0 SOURCE CODE 這篇文章來設定的,作法如下: 1.點選[工具]的[選項]  2.展開[偵錯]的[一般],並將[啟用Just My Code]的選取方塊 取消 ,以及[啟用來源連接支援]的選取方塊 點選起來   3.接著點選[偵錯]的[符號],並將[Microsoft伺服器]的選取方塊 點選起來  (點選之後會出現提示視窗,因為載入這些符號,會導致一些效能上的影響,尤其是首次載入,讓我以為Visual Studio當機了...) 這樣就可以Debug Source Code了,接著開始測試看看 : 1.先開啟一個新的專案(我選擇Asp.Net Core Web 應用程式) 2.因為只是測試所以都用預設的, 一直按確定就好, 除了Asp.Net Core 3.1改成5.0(操作方式都一樣沒差, 我只選5.0只是為了節省下載符號的時間以及空間而已,如果我選3.1它會下載這個版本的符號一次, 下次我選5.0它又會下載這個版本的符號一次) 3.專案自動建好後, 於視窗右邊的 HomeController.cs 按兩下, 視窗左邊就會看到檔案的內容, 接著找到 Index 的 rertrn View(), 在這列的前面點一下即可設定中斷點, 就像下圖的左邊紅色圈圈一樣(因為要顧到初學者所以才會說的這麼仔細) 4.設定好中斷點(紅色圈圈)之後, 過來就按下 [ IIS Express ] 的執行(上圖中中間上面的黃色圈起來的地方), 或者按下 F5, 就會開始執行程式 5.如果是第一次執行, 可能會出現一個確認視窗, 要你確認是否IIS Express的SSL憑證?按下是即可, 下面一個視窗也請按是 6.接著畫面會停止不動像當機一樣, 不是當機只是第一次抓符號要很久, 只要耐心等候直到 return View() 由紅底變成黃底就跑完了, 黃色底的列代表程式目前執行到這, 暫時不繼續執行, 如下圖