ASP.NET 中Provider如何使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
清丰ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
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如何使用的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!