2021年7月7日 星期三

[研究] Azure 雲端服務(傳統) (CloudService) 和 單機 ASP.NET Web應用程式程式碼比較

[研究] Azure  雲端服務(傳統) (CloudService) 和 單機 ASP.NET Web應用程式 (Web Application) 程式碼比較

AzureCloudService1

2021-07-06

為了把Azure  雲端服務(傳統) (CloudService) 移植到單機上,做點研究。

(下圖)Azure  雲端服務(傳統) (CloudService) 方案


********************************************************************************

(下圖)單機 ASP.NET Web應用程式 (Web Application) 方案

********************************************************************************
(下圖) 比較

Azure  雲端服務(傳統) (CloudService) 預設的方案名稱是「AzureCloudService1」 ,為了相近,敝人改名為「WebApplication1」

********************************************************************************
專案檔案放置

單機版 WebApplication1 方案的 WebApplication1 專案的 Default.aspx、Web.Config 等檔案,AzureCloudService 是放在 WebApplication1 方案的 WebRole1 專案。WebRole1 專案還多了 WebRole.cs 檔案。

********************************************************************************

Default.aspx 差異 (只列差異部分)

Default.aspx (AzureCloudService)

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebRole1.Default" %>

Default.aspx  (WebApplication)

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1.Default" %>

********************************************************************************

Default.aspx.cs 差異

Default.aspx.cs (AzureCloudService)

namespace WebRole1

Default.aspx.cs  (WebApplication)

namespace WebApplication1

********************************************************************************

Default.aspx.designer.cs 差異

Default.aspx.designer.cs (AzureCloudService)

namespace WebRole1

Default.aspx.designer.cs  (WebApplication)

namespace WebApplication1

********************************************************************************

AssemblyInfo.cs 差異

AssemblyInfo.cs (AzureCloudService)

[assembly: AssemblyTitle("WebRole1")]
[assembly: AssemblyProduct("WebRole1")]
[assembly: Guid("f668ccf8-bfd7-4995-ba0c-ac5ddd32b08a")]

AssemblyInfo.cs (WebApplication)

[assembly: AssemblyTitle("WebApplication1")]
[assembly: AssemblyProduct("WebApplication1")]
[assembly: Guid("3bae1aa8-b394-465e-86ea-b1183ae17d36")]

********************************************************************************

Web.Config比較 ( 單機版 Web Application 沒有 黃色區塊 )

<?xml version="1.0" encoding="utf-8"?>
<!--
  如需如何設定 ASP.NET 應用程式的詳細資訊,請前往
  https://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <system.diagnostics>
    <trace>
      <listeners>
        <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
          name="AzureDiagnostics">
          <filter type="" />
        </add>
      </listeners>
    </trace>
  </system.diagnostics>
  <system.web>
    <compilation debug="true" targetFramework="4.8" />
    <httpRuntime targetFramework="4.8" />
  </system.web>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
    </compilers>
  </system.codedom>
</configuration>


Web.Config 中連線字串比較

AzureCloudService

<add name="XXXWebConnectionString" connectionString="Data Source=xxx.database.windows.net;
Initial Catalog=資料庫名稱;User ID=資料庫帳號;Password=資料庫密碼;Encrypt=True"
providerName="System.Data.SqlClient" />

WebApplication

<add name="DefaultConnection" connectionString="Data Source=10.3.123.321;
Initial Catalog=資料庫名稱;Persist Security Info=True;User ID=資料庫帳號;Password=資料庫密碼" 
providerName="System.Data.SqlClient" />


(完)


沒有留言:

張貼留言