小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

個性化用戶配置概述、profile配置節(jié)詳細(xì)介紹

 laixuexideren 2010-08-09
一、基本內(nèi)容
    個性化用戶配置將配置信息與單個用戶關(guān)聯(lián),用戶的數(shù)據(jù)存儲在ASP.NET2.o提供的數(shù)據(jù)庫中,所以能夠持久保存。以下幾點(diǎn)需要注意:1.存儲的數(shù)據(jù)可以是與用戶有關(guān)的數(shù)據(jù),如果背景顏色、數(shù)據(jù)顯示的條數(shù)等等。2.所存儲的數(shù)據(jù)可以是簡單數(shù)據(jù)類型,如String、Int等,也可以是開發(fā)人員自己定義的對象。3.默認(rèn)情況下支持的是注冊用戶,可以顯示聲明allowAnonymous=true來實(shí)現(xiàn)對匿名用戶的支持。4.默認(rèn)情況下使用的數(shù)據(jù)庫是SqlExpress,可以通過修改Web.Config文件中的ConnectionString和使用aspnet_regsql工具,實(shí)現(xiàn)對SqlServer2000數(shù)據(jù)庫的支持。第四部分會給出具體方法。

    二、web.config中<profile>的詳細(xì)配置

    <profile enabled="true|false" inherits="fully qualified type reference" automaticSaveEnabled="true|false"
    defaultProvider
="provider name">
      
<properties>
        
<add name="property name" type="fully qualified type reference" provider="provider name"
        serializeAs
="String|Xml|Binary|ProviderSpecific" allowAnonymous="true|false"
        defaultValue
="default property value" readOnly="true|false" customProviderData="data for a custom profile provider" />
        
<clear />
        
<remove name="property name" />
        
<group name="group name">
          
<add name="property name" type="fully qualified type reference" provider="provider name"
          serializeAs
="String|Xml|Binary|ProviderSpecific" allowAnonymous="true|false"
          defaultValue
="default property value" readOnly="true|false" customProviderData="data for a custom profile provider" />
          
<remove name="property name" />
        
</group>
      
</properties>
      
<providers>
        
<add name="provider name" type="fully qualified type reference" connectionStringName="connection string identifier"
        commandTimeout
="number of seconds before a command times out" description="description of the provider instance"
        applicationName
="application name for stored profile information" />
        
<remove name=" provider name" />
        
<clear/>
      
</providers>
    
</profile>

    以上配置是從MSDN中整理出來的,看上去眼花繚亂的都快暈了,下面給出分解的配置,讓我們來慢慢消化。
    Profile的基本結(jié)構(gòu)
<profile
    
enabled="true|false"
    inherits
="fully qualified type reference"
    automaticSaveEnabled
="true|false"
    defaultProvider
="provider name">
    
<properties></properties>
    
<providers></providers>
</profile>

屬性 

屬性

說明

enabled

可選的 Boolean屬性。

指定是否啟用 ASP.NET 用戶配置文件。如果為 true,則啟用 ASP.NET 用戶配置文件。

默認(rèn)值為 true。

defaultProvider

可選的 String屬性。

指定默認(rèn)配置文件提供程序的名稱。

有關(guān)更多信息,請參見 Provider。

默認(rèn)值為 AspNetSqlProfileProvider。

inherits

可選的 String屬性。

包含從 ProfileBase 抽象類派生的自定義類型的類型引用。ASP.NET 動態(tài)地生成一個從該類型繼承的 ProfileCommon類,并將該類放在當(dāng)前 HttpContextProfile 屬性中。

automaticSaveEnabled

可選的 Boolean屬性。

指定用戶配置文件是否在 ASP.NET 頁執(zhí)行結(jié)束時自動保存。如果為 true,則用戶配置文件在 ASP.NET 頁執(zhí)行結(jié)束時自動保存。

只有在 ProfileModule 對象檢測到某一用戶配置文件已修改的情況下,該模塊才保存該配置文件。也就是在 IsDirty 屬性為 true的情況下。有關(guān)更多信息,請參見 ASP.NET 配置文件屬性

默認(rèn)值為 true。

子元素 

元素

說明

properties

必選的元素。

定義用戶配置文件屬性和屬性組的集合。

providers

可選的元素。

定義配置文件提供程序的集合。

父元素 

元素

說明

configuration

指定公共語言運(yùn)行庫和 .NET Framework 應(yīng)用程序所使用的每個配置文件中均需要的根元素。

system.web

為 ASP.NET 配置節(jié)指定根元素。


    profile 的 properties 元素:

<properties>
    
<add />
    
<clear />
    
<remove />
    
<group></group>
</properties>

子元素 

元素

說明

add

可選的元素。

向用戶配置文件添加屬性。

clear

可選的元素。

從用戶配置文件中清除以前定義的所有屬性。

group

可選的元素。

定義用戶配置文件屬性的分組。

remove

可選的元素。

從用戶配置文件中移除屬性。

父元素 

元素

說明

configuration

指定公共語言運(yùn)行庫和 .NET Framework 應(yīng)用程序所使用的每個配置文件中均需要的根元素。

system.web

為 ASP.NET 配置節(jié)指定根元素。

profile

為應(yīng)用程序配置用戶配置文件。


    profile 的 properties 的 add 元素:

<add 
    
name="property name" 
    type
="fully qualified type reference"
    provider
="provider name"
    serializeAs
="String|Xml|Binary|ProviderSpecific"
    allowAnonymous
="true|false"
    defaultValue
="default property value"
    readOnly
="true|false"
        customProviderData
="data for a custom profile provider"
/>

屬性 

屬性

說明

name

必選的 String屬性。

指定屬性名。該值用作自動生成的配置文件類的屬性的名稱,并用作該屬性在 Properties 集合中的索引值。該屬性的名稱不能包含句點(diǎn) (.)。

有關(guān)自動生成用戶配置文件屬性的更多信息,請參見 ASP.NET 配置文件屬性概述。

type

可選的 String屬性。

指定屬性類型。

默認(rèn)值為 String

provider

可選的 String屬性。

指定用于存儲和檢索屬性值的配置文件提供程序。provider屬性的值是 providers 元素中指定的某個配置文件提供程序的名稱。如果未指定提供程序名稱,則使用 profile 元素中指定的默認(rèn)提供程序。有關(guān)配置文件提供程序的更多信息,請參見 ASP.NET 配置文件提供程序

serializeAs

可選的 SettingsSerializeAs 屬性。

指定數(shù)據(jù)存儲區(qū)中屬性值的序列化格式。默認(rèn)序列化格式視具體的提供程序而定。實(shí)際所使用的序列化由提供程序確定;對于 SQL 提供程序,則為 String序列化。

allowAnonymous

可選的 Boolean屬性。

指定在應(yīng)用程序用戶是匿名用戶的情況下是否可以獲取或設(shè)置屬性。

如果設(shè)置為 true,則在應(yīng)用程序用戶是匿名用戶的情況下可以獲取或設(shè)置屬性。

默認(rèn)值為 false。

defaultValue

可選的 String屬性。

如果數(shù)據(jù)存儲區(qū)中沒有 Profile屬性的值,則按如下所示指定默認(rèn)值:

· 如果使用 XML 序列化對屬性 (Property) 類型進(jìn)行了序列化處理,則此屬性 (Attribute) 可以設(shè)置為表示屬性 (Property) 類型的序列化實(shí)例的 XML 字符串。

· 如果使用二進(jìn)制序列化對屬性 (Property) 類型進(jìn)行了序列化處理,則此屬性 (Attribute) 可以設(shè)置為表示屬性 (Property) 類型的序列化實(shí)例的 Base-64 編碼字符串。

·如果屬性為引用類型,則可以使用 Stringnull值指示 Profile屬性應(yīng)為未初始化的配置文件返回 null。

readOnly

可選的 Boolean屬性。

指定是否只能讀取而不能設(shè)置屬性。

如果設(shè)置為 true,則可以讀取但不可以設(shè)置屬性。

默認(rèn)值為 false

customProviderData

可選的 String屬性。

指定 customProviderData屬性 (Attribute) 可以設(shè)置為任意字符串值,以供屬性 (Property) 的配置文件提供程序使用。如果設(shè)置了此屬性 (Attribute),則該值放置在屬性 (Property) 的 Attributes 集合中,通過名稱 "CustomProviderData"進(jìn)行索引。

子元素

無。

父元素 

元素

說明

configuration

指定公共語言運(yùn)行庫和 .NET Framework 應(yīng)用程序所使用的每個配置文件中的根元素。

system.web

為 ASP.NET 配置節(jié)指定根元素。

profile

為應(yīng)用程序配置用戶配置文件。

properties

定義用戶配置文件屬性和屬性組的集合。

 

    profile 的 properties 的 clear 元素:
    這個沒啥好說的,<clear />從用戶配置文件中清除以前定義的所有屬性和組。

    profile 的 properties 的 remove 元素:
    <remove name="property name" />:從用戶配置文件屬性組移除屬性。

屬性

說明

name

必選的 String屬性。

指定要從集合中移除的屬性定義的名稱。


    profile 的 properties 的 group 元素:
<group name="group name">
    
<add />
    
<remove./>
</group>

屬性 

屬性

說明

name

必選的 String屬性。

屬性組的名稱。此值用作自動生成的組配置文件類的標(biāo)識符。該組的名稱不能包含句點(diǎn) (.)。

有關(guān)自動生成用戶配置文件屬性的更多信息,請參見 ASP.NET 配置文件屬性概述。

子元素 

元素

說明

add

可選的元素。

向用戶配置文件屬性組添加屬性。

remove

可選的元素。

從用戶配置文件屬性組移除屬性。


    profile 的 group 的 add 元素:

<add 
    
name="property name" 
    type
="fully qualified type reference"
    provider
="provider name"
    serializeAs
="String|Xml|Binary|ProviderSpecific"
    allowAnonymous
="true|false"
    defaultValue
="default property value"
    readOnly
="true|false"
    customProviderData
="data for a custom profile provider"
/>

屬性

 屬性

說明

name

必選的 String屬性。

指定屬性名。該值用作自動生成的配置文件類的屬性的名稱,并用作該屬性在 Properties 集合中的索引值。該屬性的名稱不能包含句點(diǎn) (.)。

有關(guān)自動生成用戶配置文件屬性的更多信息,請參見 ASP.NET 配置文件屬性概述。

type

可選的 String屬性。

指定屬性類型。

默認(rèn)值為 String。

provider

可選的 String屬性。

指定用于存儲和檢索屬性值的配置文件提供程序。此屬性的值是 providers 元素中指定的某個配置文件提供程序的名稱。如果未指定提供程序名稱,則使用 profile 元素中指定的默認(rèn)提供程序。有關(guān)配置文件提供程序的更多信息,請參見 ASP.NET 配置文件提供程序。

serializeAs

可選的 SettingsSerializeAs 屬性。

指定數(shù)據(jù)存儲區(qū)中屬性值的序列化格式。默認(rèn)序列化格式視具體的提供程序而定。實(shí)際所使用的序列化由提供程序確定;對于 SQL 提供程序,則為 String序列化。

allowAnonymous

可選的 Boolean屬性。

指定在應(yīng)用程序用戶是匿名用戶的情況下是否可以獲取或設(shè)置屬性。

如果設(shè)置為 true,則在應(yīng)用程序用戶是匿名用戶的情況下可以獲取或設(shè)置屬性。

默認(rèn)值為 false。

defaultValue

可選的 String屬性。

指定當(dāng)數(shù)據(jù)存儲區(qū)中的 Profile屬性沒有值時所使用的默認(rèn)值。

如果使用 XML 序列化對屬性 (Property) 類型進(jìn)行了序列化處理,則此屬性 (Attribute) 可以設(shè)置為表示屬性 (Property) 類型的序列化實(shí)例的 XML 字符串。

如果使用二進(jìn)制序列化對屬性 (Property) 類型進(jìn)行了序列化處理,則此屬性 (Attribute) 可以設(shè)置為表示屬性 (Property) 類型的序列化實(shí)例的 Base-64 編碼字符串。

如果屬性為引用類型,則可以使用 stringnull指示 Profile屬性應(yīng)為未初始化的配置文件返回 null。

readOnly

可選的 Boolean屬性。

指定是否只能讀取而不能設(shè)置屬性。

如果設(shè)置為 true,則可以讀取但不可以設(shè)置屬性。

默認(rèn)值為 false

customProviderData

可選的 String屬性。

指定供屬性的配置文件提供程序使用的字符串值。此屬性可以設(shè)置為任何字符串值。

如果設(shè)置了 customProviderData屬性 (Attribute),則該值放置在屬性 (Property) 的 Attributes 集合中,通過名稱 "CustomProviderData"進(jìn)行索引。


     profile 的 group 的 remove 元素:
    <remove name="property name" />

屬性

說明

name

必選的 String屬性。

指定要從集合中移除的屬性定義的名稱。


    profile 的 providers 元素:

<providers>
    
<add />
    
<remove/>
    
<clear/>
</providers>

子元素

 元素

說明

add

可選的元素。

向配置文件提供程序的集合添加提供程序。

clear

可選的元素。

從配置文件提供程序的集合中移除提供程序。

remove

可選的元素。

從集合中清除以前定義的所有配置文件提供程序。


    profile 的 providers 的 add 元素:
<add 
    
name="provider name" 
    type
="fully qualified type reference"
    connectionStringName
="connection string identifier"
    commandTimeout
="number of seconds before a command times out"
    description
="description of the provider instance"
    applicationName
="application name for stored profile information"
/>

屬性 

屬性

說明

name

必需的 String屬性。

指定提供程序?qū)嵗拿Q。這是用于 <profile> 元素的 defaultProvider屬性的值,該值將提供程序?qū)嵗龢?biāo)識為默認(rèn)的配置文件提供程序。該提供程序的 name還用于在 Providers 集合中對該提供程序進(jìn)行索引。

type

必需的 String屬性。

指定實(shí)現(xiàn) ProfileProvider 抽象基類的類型。

connectionStringName

必需的 String屬性。

指定在 <connectionStrings> 元素中定義的連接字符串的名稱。指定的連接字符串將由正在添加的提供程序使用。

applicationName

可選的 String屬性。

指定數(shù)據(jù)源中存儲配置文件數(shù)據(jù)的應(yīng)用程序的名稱。該應(yīng)用程序名稱使得多個 ASP.NET 應(yīng)用程序能夠使用同一個數(shù)據(jù)庫,而不會遇到不同應(yīng)用程序存在重復(fù)配置文件數(shù)據(jù)的情況?;蛘?,通過指定相同的應(yīng)用程序名稱,多個 ASP.NET 應(yīng)用程序可以使用相同的配置文件信息。

如果未指定此屬性 (Attribute),則 .NET Framework 附帶的配置文件提供程序使用 ApplicationName 屬性 (Property) 的 ApplicationVirtualPath 值。

commandTimeout

可選的 Int32屬性。

指定在向成員資格數(shù)據(jù)源發(fā)出的命令超時之前等待的時間(以秒為單位)。SQL 提供程序在創(chuàng)建 SqlCommand對象時,使用該超時屬性。默認(rèn)情況下,ASP.NET 配置中并未設(shè)置該屬性。因此,使用 ADO.NET 默認(rèn)值 30 秒。如果設(shè)置了該屬性,則 SQL 提供程序?qū)ο驍?shù)據(jù)庫發(fā)出的所有 SQL 命令使用已配置的超時值。

默認(rèn)值為 30(ADO.NET 默認(rèn)值)。

description

可選的 String屬性。

指定配置文件提供程序?qū)嵗恼f明。


    profile 的 providers 的 remove 元素:
    <remove name=" provider name" />:從用戶配置文件提供程序集合中移除配置文件提供程序?qū)嵗?br>

屬性

說明

name

必選的 String屬性。

要從集合中移除的配置文件提供程序?qū)ο蟮拿Q。


     profile 的 providers 的 clear 元素:
    <clear/>:從用戶配置文件提供程序集合中移除所有配置文件提供程序?qū)嵗?/span>

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多