2019年5月11日 星期六

11 網站部署與設定

11 網站部署
* 多個網站有各自ApplicationState
# App_offline.htm建立後,可產生網站離線的效果
先行編譯:aspnet_compiler.exe
- 就地先行編譯
* aspnet_compiler -v 虛擬目錄 -c
* aspnet_compiler -p 實體路徑 / -c
編譯完成後,於asp.net的temp資料夾可看到compiled的檔案
- 先行編譯再部署
* aspnet_compiler -p 來源目錄 -v / 目標目錄
Web.config組態設定檔(11-45 細看,影印)

Example 11-6 讀取Web.config內容
Dim str As String = ConfigurationManager.AppSettings("變數名")
body.Attributes("bgcolor") = str
 使用IIS管理員,新增應用程式設定值,名稱為變數名
SMTP設定
可於IIS管理員中設定,設定完成後會自動新增在Web.config中 
自行編輯Web.config
<globalization>、<urlMappings>
Example 11-7 使用urlMappings建立簡單網頁名稱對應,使用globalization使網頁符合文化特性效果

12 網站巡覽與一致性外觀
網站巡覽
SiteMapPath、Menu、TreeView、
SiteMapPath:
1、從網站導覽取得巡覽資料,網站導覽為Web.sitemap,加入新項目=>網站導覽
Web.sitemap
* <siteMap>
    <siteMapNode url="" title="" description="">
    /> 表示node的結尾
2、拖拉控制項到每一頁的最前面
3、設定樣板
4、設定屬性
Menu:
1、拖拉控制項至首頁
2、設定繫結對象
3、選擇網站導覽或XML
4、為其他頁加入控制項
5、設定屬性,如水平或垂直
搭配MultiView製作Tab分頁
1、拖拉控制項
2、新增根項目或子項目
3、設定屬性
4、撰寫Click事件
TreeView:
設定方式類似Menu控制項
亦可以用程式動態新增TreeView節點
主版頁面
頁面檔為.master
合併後的頁面,事件引發順序如下:
主版控制項Init、內容控制項Init、主版Init、內容Init、內容Load、主版Load、內容控制項Load、內容PreRender、主版PreRender、主版控制項PreRender、內容控制項PreRender
1、新增主版頁面檔
2、切換至設計模式,新增表格、於儲存格中放入ContentPlaceHoder
#顯示上線人數 Dim t As Integer = Page.Application("TotalCounter')
   建立Global.asax,於Sub Application_Start新增Application("TotalCounter")變數與Sub Session_Start新增TotalCounter計數+1
3、加入內容頁面,預設Default.aspx
第二種加入方式
1、加入新的aspx時,勾選主版頁面
# 內容頁面如何存取主版頁面控制項
    Dim ML As Object: ML=Page.Master.FindControl("控制項名")
    之後利用型別轉換將ML設為該控制項類別
巢狀主版頁面:主版頁面中有子主版頁面
指定主版頁面:方法有三
1、在指示詞中指定
2、於Page_PreInit設定Page.MasterPageFile
3、在Web.config中指定<pages masterPageFile="" />

CSS樣式表
<style type="text/css">
標籤名{樣式1:值;樣式2:值}
</style>
多重定義樣式表:指定樣式id、指定樣式class
* #id、*.class
外部樣式表:@import url("外部CSS URL") or <link type="text/css" rel="stylesheet" href="URL"/>

佈景主題
面板skin,放置於主題目錄中,類似CSS,規範元件的外觀,skin係針對控制項外觀做設定,可將控制項外觀屬性設定完成後,排除不該出現的屬性,將原始碼複製到skin中

13 雲端系統的檔案存取與上傳
伺服器檔案存取:權限、同步、效率
權限:ASPNET or NETWORK SERVICE
# 使用Windows驗證方式,在web.config的<system.web>加入<identity impersonate="true"/>
IIS7/8設定目錄修改權限給ASP.NET執行者帳戶
* 將NETWORK SERVICE勾選修改
檔案存取類別
* System.IO.File, .FileStream
* My.Computer.FileSystem (不細看、影印13-6)
* Page.Server

沒有留言:

張貼留言