您好,登錄后才能下訂單哦!
ASP.NET 中Provider如何使用,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
ASP.NET Providers 相信大家都已經非常熟悉,它為我們開發 ASP.NET 應用程序提供了方便。
比如在 Visual Studio 控件工具箱中的 Login 部分,就是基于 Membership provider、Session provider 和 Profile provider,大大地簡化了我們在開發過程中處理與用戶相關的功能。
ASP.NET Provider 架構示意圖
ASP.NET Provider 的類結構圖
Azure Provider 是什么
Azure 上的應用程序也是 ASP.NET 應用程序,所以它也支持 ASP.NET Provider 模型。不同的是,我們平時用的 Provider 是基于關系數據庫的(如SQL Server),而“云端”上 Provider 自然也需要使用“云端”的數據解決方案——Windows Azure Storage。
云平臺是基于分布式計算的。這就意味著,你的同一個應用程序可能會分布在不同的機器上。所以包括 Session 在內的各種用戶數據不能放在 host 主機上,必須通過 Windows Azure Storage 來統一管理。
微軟認為:基于 Windows Azure Storage 的 provider 比傳統SQL provider 具有以下優勢:
在保持與 SQL provider 完全相同的使用方法(不用做任何代碼修改)的基礎上,
并行處理更強悍。
分頁查詢更方便。
計算能力更牛X。
運行更穩定。
Azure Provider 的原理
在 Windows Azure SDK(March 2009 CTP)中,微軟已經提供了可直接使用的 Azure 版 ASP.NET Provider。包括 membership, role,profile,session state 4 種providers。
打開 Azure 版 ASP.NET Provider 項目,非常一目了然。以下的 4 個文件與 4 種 provider一一對應。
拿 TableStorageMembershipProvider 來說,它其實是繼承了 MembershipProvider 類,override 了 MembershipProvider 類里與數據操作相關的方法,將它們換成使用 Windows Azure Table Storage 版本的。
public class TableStorageMembershipProvider : MembershipProvider配置使用 AzureProvider:
剛才說了,從傳統的 SQL Provder 轉換到使用 Azure Provider,不用做任何代碼上的改動,只需要更改配置文件就可以了。
看完上述內容,你們掌握ASP.NET 中Provider如何使用的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。