个性化与主题讲解_第1页
个性化与主题讲解_第2页
个性化与主题讲解_第3页
个性化与主题讲解_第4页
个性化与主题讲解_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第11章

特性化与主题内容特性化配置主题和外观特性化配置ASP.NET特性化配置特性化配置的用户标识特性化配置的运用特性化配置供应程序ASP.NET特性化配置特性化是指对访问站点的用户依据他们各自的要求供应相关的服务和界面的呈现风格。特性化应用程序须要这样的一些功能:必需运用唯一的用户标识符存储信息能够在用户再次访问时识别用户,然后依据须要获得用户信息在ASP.NET中,可以便利地完成对特性化数据的存取和运用。其基本原理如下:特性化配置功能将信息与单个用户关联,并接受许久性的格式存储这些信息通过特性化配置,可以管理各种用户(匿名用户、Window认证用户和Form认证用户)信息,而无需创建和维护自己的数据库ASP.NET会依据配置将ProfileCommon类实例化,并可在应用程序的任何位置访问ASP.NET特性化配置特性化配置的工作方式在Web.config中配置Provider和Profile在程序中设置和引用该值演示和练习:运用Profile保存简洁的用户信息多媒体演示特性化配置的用户标识通过身份验证的用户匿名用户演示和练习:在Web.config中配置保存匿名用户个人配置信息迁移匿名特性化配置信息通过身份验证的用户默认状况下,用户特性化配置与System.Web.HttpContext.Current.User属性中存储的用户标识关联。用户标识可通过以下几方面确定:ASP.NETForms身份验证,在身份验证成功之后设置用户标识Windows或Passport身份验证,在身份验证成功之后设置用户标识自定义身份验证,对用户凭据的获得和用户标识的设置进行手工管理匿名用户必需在Web.config显示配置对匿名用户的支持可以通过Cookie保存匿名用户标识假如不能保存Cookie,可以将匿名用户表示作为URL的一部分<anonymousIdentificationenabled="[true|false]"cookieless="[UseUri|UseCookies|AutoDetect|UseDeviceProfile]"cookieName=""cookiePath="“cookieProtection="[None|Validation|Encryption|All]"cookieRequireSSL="[true|false]"cookieSlidingExpiration="[true|false]"cookieTimeout="[DD.HH:MM:SS]"domain="cookiedomain"/>演示和练习:在Web.config中配置保存匿名用户个人配置信息多媒体演示迁移匿名特性化配置信息当用户从匿名用户转换到被认证用户时,匿名用户数据须要迁移过来迁移的方法:将触发Profile_OnMigrateAnonymous事务,所以须要在该事务处理迁移的动作首先获得匿名用户特性化配置然后删除匿名用户特性化配置信息,删除匿名用户Cookie特性化配置的运用属性定义信息运用标量值运用困难的属性类型运用用户自定义的属性类型运用属性组演示和练习:运用自定义的属性类型属性定义信息属性说明Name属性名称type指定属性的类型。默认为String。可以将任何.NET类指定为类型(Int32、DateTime、StringCollection等)。如果.NETFramework中没有定义该类型,则必须确保Web应用程序可以访问该类型。可以在站点的Bin目录中或全局程序集缓存(GAC)中包含该类型编译后的程序集,也可以将该类型的源代码放入网站的App_Code目录中serializeAs指定序列化格式化程序(字符串、二进制、XML或提供程序特定的序列化)。默认序列化为字符串allowAnonymous指定一个布尔值,该布尔值指示是否为匿名用户托管属性。默认情况下,该属性为false。如果希望未经身份验证的用户使用该属性,则可以将该属性设置为true属性定义信息属性说明defaultValue指定属性初始化时使用的值readOnly指定一个布尔值来指示属性是否可修改provider指定特定于属性的提供程序。默认情况下,使用为个性化配置属性指定的默认提供程序对所有属性进行管理,但个别属性也可以使用不同的提供程序customProviderData指定一个包含自定义信息的可选字符串,该字符串将被传递运用标量值将标量值(如字符串、数字值或DateTime值)存储在特性化配置中仅须要很少的配置,即只需供应名称和类型<profiledefaultProvider="AspNetSqlProfileProvider"><properties><addname="Name"/><addname="Weight"type="System.Int32"/><addname="Birthday"type="System.DateTime"/></properties></profile>运用困难的属性类型必需供应有关如何序列化该类型的信息,使特性化配置系统可以获得属性值并将属性值设置为正确的类型<profiledefaultProvider="AspNetSqlProfileProvider"><properties><addname=“FavoriteURLs”type=“System.Collection.Specialized.StringCollection”

serializeAs="Xml"/></properties></profile>运用用户自定义的属性类型必需支持要存储在用户特性化配置中的成员的序列化<profiledefaultProvider="AspNetSqlProfileProvider"><properties><addname="MyCart"type="Samples.AspNet.Profile.ShoppingCart"serializeAs="Xml"/></properties></profile>运用属性组可运用group指定特性化配置属性组引用方式:Profile.Address.Street<profileenabled="true"><properties><addname="PostalCode"/><groupname="Address"><addname="Street"/><addname="City"/><addname="CountryOrRegion"/></group></properties></profile>演示和练习:运用自定义的属性类型多媒体演示特性化配置供应程序默认特性化配置供应程序运用AspNetSqlProfileProvider的实例通过运行Aspnet_regsql.exe叮嘱来创建数据库自定义特性化配置供应程序须要在特性化配置供应程序不支持的数据源中存储特性化配置信息须要运用不同于.NETFramework包含的供应程序所运用的数据库架构来管理特性化配置信息主题和外观ASP.NET主题和外观概述定义、应用主题和外观定义主题和外观在页面或配置文件中运用主题演示和练习:定义和运用ASP.NET主题以编程方式应用ASP.NET主题演示和练习:通过Profile保存用户运用过的主题主题设置的优先级演示和练习:主题优先级ASP.NET主题和外观概述定义主题是属性设置的集合,运用这些设置可以定义页面和控件的外观,然后在某个Web应用程中的全部页、整个Web应用程序或服务器上的全部Web应用程中一样地应用此外观外观是主题的主要构成元素之一,通过外观我们可以对服务器控件(例如,Button、Label、TextBox或Calendar控件)进行属性和样式的设定主题的组成外观级联样式表主题图形和其他资源主题的类型页面主题:放在站点的App_Themes书目下,在本站点内运用全局主题:全局主题存储在Web服务器的名为Themes的全局文件夹中,全部Web服务器上的站点都可以运用定义主题和外观只能设置那些其ThemeableAttribute属性(Attribute)设置为true(在控件类中)的属性(Property)显式地指定控件行为类属性或其它不接受通过主题设置的属性创建主题创建页面主题:在站点的App_Themes书目下创建主题创建全局主题:在iisdefaultroot\aspnet_client\system_web\version\Themes书目下创建主题创建外观:在设计视图中设计好控件的样式,然后复制到.skin文件中在页面或配置文件中运用主题对站点应用主题:在Web.config中将<pages>元素设置为全局主题或页面主题的主题名称对单个页应用主题:将@

Page指令的Theme或StyleSheetTheme属性设置为要运用的主题的名称对控件应用外观:主题中定义的外观应用于已应用该主题的应用程序或页中的全部控件实例对控件应用命名外观:设置控件的SkinID属性来引用外观演示和练习:定义和运用ASP.NET主题多媒体演示以编程方式应用ASP.NET主题以编程方式应用页面主题:在页面的PreInit方法的处理程序中,设置页面的Theme属性以编程方式应用样式表主题:重写StyleSheetTheme属性,然后在get访问器中返回样式表主题的名称以编程方式应用控件外观:在页面的PreInit方法的处理程序中,设置控件的SkinID属性Page.Theme="BlueTheme"publicoverrideStringStyleSheetTheme{get{…}}演示和练习:通过Profile保存用户运用过的主题多媒体演示主题设置的优先级在页面中引用主题优先于在Web配置文件中引用主题对于控件而言,运用默认

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论