希格工作室

2019年4月25日 星期四

.Net Core 部屬發佈自動取代應用程式變數 - IIS 與 AWS Lambda


.Net Core 部屬發佈自動取代應用程式變數

注意:這是以AWS Toolkit for Visual Studio的專案範本建立的專案為基礎去操作的


步驟
1.Visual Studio原生發行(限IIS)
2.Aws Visual Studio toolkit 發行至AWS Serverless or Lambda



Visual Studio原生發行 

1.建立想要的appsettings.{env.EnvironmentName}.json如appsettings.Test. json 

2.先建立發行檔(專案右鍵[發行)->依步驟到結束) 

3.打開發行檔(*.pubxml 在Properties\ PublishProfiles) 

4.增加<EnvironmentName>節點如Test 
  <PropertyGroup>
    <EnvironmentName>Test</EnvironmentName>
  </PropertyGroup>

5.直接發行後,查看程式是否有正確取得appsettings.Test. json內所設定的值 

6.自動的方式只限定IIS環境,在Linux環境上仍需要修改作業系統的環境變數。 




Aws Visual Studio toolkit 發行至AWS Serverless or Lambda
主要是透過修改serverless.template讓Parameters頁能夠增加自定義參數,以[Publish To AWS Lambda]為例。


1.打開專案內的serverless.template 

2.在Parameters的地方可以看到預設的ShouldCreateBucket與BucketName兩個設定

3.直接在此區域底下Append你要的,例如connectionStrings

4.此時回發行畫面會發現多了一個欄位,代表增加設定欄位成功


5.接著再回到serverless.template,修改Resources這個區塊

6.我們不用像上面原來一樣參考這麼多地方,只要直接修改Resources將參考對應到我們的appsettings.json的值即可

7.在發行畫面中輸入這個欄位值,測試看看是否成功。