如何在ASP.NET應(yīng)用程序中初始化_ASP教程
推薦:程序員看淘寶,如何用Session保存用戶狀態(tài)網(wǎng)上購物已經(jīng)成為現(xiàn)在生活不可缺少的一部分。我們上淘寶只是為了消費(fèi),今天換一個(gè)角度,用程序員的眼光看看淘寶。 如上圖: 情況一:當(dāng)打開一些和賬戶有關(guān)的網(wǎng)頁,檢測用戶沒有登錄,系統(tǒng)自動(dòng)會(huì)跳轉(zhuǎn)到登錄界面。 情況二:當(dāng)檢測到已經(jīng)有用戶登錄,頁面會(huì)自動(dòng)跳轉(zhuǎn)到目的
每個(gè)程序都需要初始化的過程,用來讀取配置或者設(shè)置一些運(yùn)行環(huán)境(變量),對于ASP.NET程序來說,又該在哪里執(zhí)行初始化的任務(wù)呢?
我想應(yīng)該絕大多數(shù)人都知道在Global.asax中執(zhí)行初始化的過程,然而有些細(xì)節(jié)是我們需要關(guān)注的。
本文用例
在這篇博客的示例代碼中,AppInitializer包含了網(wǎng)站的初始化的實(shí)現(xiàn)代碼:
- public static class AppInitializer
- {
- public static ConnectionStringSettings MyNorthwindConnectionSetting { get; private set; }
- public static void Init()
- {
- // 讀取連接字符串。
- LoadConnectionString();
- // 設(shè)置SQLSERVER緩存依賴通知。
- SetSqlDependency();
- // 其它的初始化操作。
- OthersInit();
- }
- static void LoadConnectionString()
- {
- ConnectionStringSettings setting = ConfigurationManager.ConnectionStrings["MyNorthwind"];
- if( setting == null )
- throw new ConfigurationException("沒有配置MyNorthwind連接字符串。");
- if( string.IsNullOrEmpty(setting.ConnectionString) )
- throw new ConfigurationException("沒有為MyNorthwind連接字符串指定內(nèi)容。");
- if( string.IsNullOrEmpty(setting.ProviderName) )
- throw new ConfigurationException("沒有為MyNorthwind連接字符串指定ProviderName 。");
- // 保存讀取到的連接字符串,供程序使用。
- MyNorthwindConnectionSetting = setting;
- }
- static void SetSqlDependency()
- {
- // 判斷SQLSERVER版本是否為 2005以上版本,
- // 是否開啟Service Broker的檢查代碼就不列出了。
- SqlDependency.Start(MyNorthwindConnectionSetting.ConnectionString);
- }
- static void OthersInit()
- {
- // 其它的初始化操作。
- // 例如:
- // 1. 加載必要的緩存數(shù)據(jù)。
- // 2. 檢查上傳目錄是不存在。
- // 3. ...................
- }
- }
這段代碼的意圖很清楚,一定要確保正確的配置了數(shù)據(jù)庫連接字符串,否則以異常的形式報(bào)告出來。
示例程序還有一個(gè)頁面,Default.aspx
- <body>
- <form id="form1" runat="server">
- <div>
- <h1>User Login</h1>
- </div>
- <p style="line-height: 150%;">
- UserName: <asp:TextBox ID="txtUserName" runat="server" Width="200px" Text="Fish Li"></asp:TextBox><br />
- Password: <asp:TextBox ID="txtPassword" runat="server" Width="200px" TextMode="Password"></asp:TextBox><br />
- <asp:Button ID="btnLogin" runat="server" Text="登錄" OnClick="btnLogin_Click" />
- </p>
- </form>
- </body>
分享:ASP.NET七大身份驗(yàn)證方式及解決方案在B/S系統(tǒng)開發(fā)中,經(jīng)常需要使用身份驗(yàn)證。因?yàn)閣eb應(yīng)用程序非常特殊,和傳統(tǒng)的C/S程序不同,默認(rèn)情況下(不采用任何身份驗(yàn)證方式和權(quán)限控制手段),當(dāng)你的程序在互聯(lián)網(wǎng)/局域網(wǎng)上公開后,任何人都能夠訪問你的web應(yīng)用程序的資源,這樣很難保障應(yīng)用程序安全性。通俗點(diǎn)來說:
- 程序員看淘寶,如何用Session保存用戶狀態(tài)
- ASP.NET七大身份驗(yàn)證方式及解決方案
- 8 種提升 ASP.NET Web API 性能的方法
- asp.net計(jì)算每個(gè)頁面執(zhí)行時(shí)間的方法
- asp實(shí)現(xiàn)獲取MSSQL數(shù)據(jù)庫表指定條件行數(shù)的函數(shù)
- asp實(shí)現(xiàn)讀取數(shù)據(jù)庫輸出json代碼
- JScript中遍歷Request表單參數(shù)集合的方法
- 如何使用ASP建立虛擬的FTP服務(wù)器
- 用ASP+CSS實(shí)現(xiàn)隨機(jī)背景
- 簡述Xml.Serialization如何序列化對象到XML文件
- 如何過濾html中的回車空格
- ASP中的EVAL函數(shù)使用教程
ASP教程Rss訂閱編程教程搜索
ASP教程推薦
- .net中如何給數(shù)據(jù)表實(shí)體類賦值的方法
- Asp讀取文本文件并顯示
- ASP中的面向?qū)ο?類
- ASP技巧實(shí)例:ASP實(shí)現(xiàn)最簡潔的多重查詢的解決方案
- Asp定時(shí)執(zhí)行操作、Asp定時(shí)讀取數(shù)據(jù)庫(網(wǎng)頁定時(shí)操作詳解)
- 解析asp中提取HTML中圖片的SRC路徑
- 瞄準(zhǔn)Apache IIS7向開源張開雙臂
- ASP獲取到的系統(tǒng)時(shí)間有上午,下午的解決方法
- asp如何設(shè)置cookies過期時(shí)間
- 入門:初學(xué)ASP動(dòng)態(tài)網(wǎng)頁制作常用錯(cuò)誤處理
- 相關(guān)鏈接:
- 教程說明:
ASP教程-如何在ASP.NET應(yīng)用程序中初始化。