2009-11-16 74 views
1


檔案和applicationName的

1)是否有一個原因,aspnet_Profile表中沒有的applicationID列,而aspnet_Membership和aspnet_Roles表格並定義的applicationID列?


2)如果我們爲當前的用戶配置文件,然後改變我們的配置文件提供的applicationName的,然後天寒相同的用戶無法再閱讀。所以看起來,配置文件提供程序知道該用戶的表項是在applicationName被更改之前做出的?

但是這怎麼可能,因爲aspnet_Profile不包含ApplicationID列?


謝謝


編輯:

2)我不知道如何更改配置文件提供的應用程序的名稱 - 它不是一個配置文件部分提供程序條目的屬性。它是在成員部分供應商的屬性,這是有道理的


我能夠指定applicationName屬性,所以我必須承擔的個人資料提供者使用它以某種方式:

<profile defaultProvider="defaultP"> 
    <providers> 
     <add name="defaultP" 
      connectionStringName="connect" 
      applicationName="_someName" 


回答

2

1)看爲ASPNET安全系統中的數據庫表,一個資料記錄被綁定到用戶,並且用戶被栓到一個應用程序。由於所有配置文件都與用戶綁定,因此配置文件本身不需要明確指定應用程序(這由用戶的應用程序隱含)。

2)我看不到如何更改配置文件提供程序的應用程序名稱 - 它不是配置文件部分提供程序條目的屬性。它是會員部分提供商的屬性,這是有道理的。

+0

我編輯了我的原帖以回覆您的回覆 – PrgGnt 2009-11-16 20:50:12

+2

我的錯誤。顯然它確實存在。 VS 2008中的Intellisense沒有列出它作爲一個選項,或者我正在做白日夢的更好的事情,並沒有注意到它。副手,我只能猜測,如果您沒有指定成員資格提供程序,applicationName屬性位於配置文件提供程序上。對某些Microsoft文檔的快速搜索未發現有關配置文件提供程序的applicationName存在或可能與成員資格提供程序設置衝突的信息。 – 2009-11-16 21:16:12

+1

此網頁(http://msdn.microsoft.com/en-us/library/aa479025.aspx)提示配置文件提供程序上的applicationName屬性有助於區分可能相等的用戶名(不是ids),但可以不同的「範圍」,因此需要不同的配置文件。 – 2009-11-16 21:26:30