部署asp.net網站到Azure
前言
前些天一直在寫一個單頁面web應用程式,終于完成了,于是考慮發布到云服務器,本人沒有AWS賬號,遂本打算使用谷歌云,參考檔案后發現官方檔案給出的方式為在visual studio上使用Cloud Tools for Visual Studio插件,然而該插件似乎只支持vs2017,無奈只能改用Azure,后續我也會繼續探索在Google上部署ASP.NET應用,畢竟Azure只給一個月的免費時間,只有升級賬戶后才能享受一年的免費時間,
我們開始吧
這是小白的第一次使用,所以只是我自己的方法和順序,僅供參考,如果有大佬有更方便快捷的方法歡迎提供,如有疏漏錯誤也煩請指出,謝謝!
建立資料庫
首先我們需要在Azure上新建一個資料庫,這個程序參考了這篇文章,
打開Azure首頁后搜索 sql 資料庫,選擇 sql 資料庫并轉到,

然后我們添加一個資料庫,我的里面已經有了一個資料庫實體,如果沒有的話界面可能會和我的不太一樣,

打開以后大概長這個樣子:

從上到下依次填入資訊,
* 訂閱:如果是免費賬戶似乎只有這一個選項,原諒我沒有見識過付費賬戶長啥樣,
* 資源組:如果你之前有建立過,可以選擇之前建立的資源組或新建資源組,如果沒有那只能新建一個了,新建時可以起一個自己喜歡的名字,
* 資料庫名稱:可以起一個自己喜歡的名字,不能是之前有過的,
* 服務器:如果之前建立過,可以選擇之前的或新建一個,如果沒有就新建一個新的吧,點擊新建后會在右邊顯示出來:

* 服務器名稱:這個相當于你的資料庫服務器的域名,所以必須是獨一無二的
* 服務器管理員登錄:資料庫管理員的賬號名,在以后登錄資料庫進行連接和管理的時候用它作為用戶名,
* 密碼:登錄資料庫的密碼,與前者相對應,
* 位置:服務器所在位置,我選擇了距離我最近的位置,大家可以按需自行選擇,(雖然是離我最近的位置但是訪問速度依然不快)
* 允許 Azure 服務訪問服務器:這個一定要選上,以允許你的網站使用建立的資料庫服務器,
* 想要使用 SQL 彈性池:這個我用不上,大家可以自行按需選擇,
* 計算 + 存盤:這個可以用來配置資料庫的大小,大家可以按需進行調整,打開以后是這個樣子的:

一般情況下就可以點擊左下的 查看 + 創建 來建庫了,

如果還有其他需求可以點 Next: 其他設定> 進行設定,
然后等配置完成,在 sql 資料庫 界面就出現了剛剛建立的資料庫了,

點擊名稱,可以轉到詳細資訊頁面:

右上方的服務器名稱就是待會用來連接資料庫的服務器名稱,
點擊連接字串可以顯示資料庫連接字串格式,使用時需要手動替換掉資料庫管理員用戶名和密碼,

ASP.NET 專案連接資料庫
使用剛剛的資料庫連接字串,替代你的專案里的資料庫連接字串,providerName 依然可以使用 System.Data.SqlClient,此時你的專案已經在使用你在Azure上的資料庫了,
然而,現在這個資料庫還是空的,需要建表,而且現在也不能方便的管理資料庫,此時需要在 visual studio 上或 Microsoft SQL Server Management Studio 上連接資料庫進行管理,
在visual studio上連接遠端資料庫
此處以 visual studio 2019 為例,點擊服務器資源管理器上的添加按鈕來新建一個連接:

點擊 Azure, 登錄你的Azure賬號,下面會顯示出來你的賬號中的資料庫實體,

選擇你想連接的資料庫,服務器名稱即在資料庫詳情里看到的服務器名稱,身份驗證選擇 SQL Server身份驗證,用戶名和密碼就是建立資料庫的時候配置的資料庫管理員賬戶和密碼(和連接字串里替換的那個一樣),然后連接即可,
接下來即可對資料庫進行管理,建表什么的,然后就可以使用了,
在Microsoft SQL Server Management Studio上連接遠端資料庫
下面是以 Microsoft SQL Server Management Studio 19 為例的演示,其他版本大同小異,
打開 Microsoft SQL Server Management Studio 19,出現 連接到服務器 對話框,

* 服務器型別:選擇 資料庫引擎
* 服務器名稱:就是熟悉的那個服務器名稱,Azure 資料庫詳細頁面里那個,
* 身份驗證:選擇 SQL Server 身份驗證,
* 登錄名:這里需要注意,需要填寫 你的資料庫管理員用戶名@服務器名稱,不能只填寫管理員用戶名,
* 密碼:嗯,就是那個密碼,
然后連接,就可以了,
發布網站
折騰好資料庫結構后就可以發布網站了(還沒有在資料庫建表的話現在快去建表),如果你希望直接遷移資料庫的話,可以直接在visual studio中使用資料庫遷移,由于我不想把測驗時的亂七八糟的資料上傳,所有沒有用,如需要請自行搜索吧,參考的那篇文章里也有一些說明,發布的步驟參考了微軟官方檔案,
首先要確保你所有的資源都已經包含在專案內了,否則發布后會出現找不到資源的情況,在本地測驗時可能路徑在同一個檔案夾中不會出現錯誤,但是發布到遠端時,沒有包含在專案中的資源是不會被上傳到服務器的,這里需要注意,
在解決方案的web專案上 右鍵 > 發布(在類別庫上右鍵是沒有發布的),

選擇第一個應用服務,可以選擇新建或現有的,此處選擇新建:

點擊發布后會讓你登錄Azure賬戶(已經登錄的可以省去此步驟),之后會出現一些應用的設定:

可以起一個響亮的名字,資源組選擇你要發布到的資源組,其他按(bao)需(chi)選(mo)擇(ren),然后點擊創建,
稍候,vs會在發布成功后自動在瀏覽器中打開發布的網頁,以后都可以登錄這個URL進行訪問啦!
在 Azure 的所有資源中可以看到所有的資源,不只是剛剛發布的網站,而且包括其他時候發布到各個資源組里的各種東西,我這里只有這一個專案,

總結
微軟的全家桶服務讓網站的開發維護和發布變得很簡單順暢,程序并不難,要是Azure的免費時間給的再寬泛一些就更好了,
最后祝大家中秋快樂!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/16049.html
標籤:ASP.NET
