2010-07-21 46 views
6

我讀過的地方ApplicationID是一個網站(IIS站點路徑)的唯一ID。但我仍然困惑。ASP.NET ApplicationId

  • 何時以及爲什麼我需要這個?
  • 我想實現一個網站的asp.net會員資格,我會創建一些額外的SQL表(如公司,服務等),而不是asp.net會員表。所以;是否需要在這些自定義表中包含ApplicationID列?爲什麼?

回答

3

應用程序標識存儲在成員資格數據庫的aspnet_Applications表中。當您第一次啓用ASP Memebership提供程序時,您在web.config中設置的應用程序名稱將被輸入到此表中。從此,成員資格提供程序會使用您的應用程序名稱來確定哪些用戶可以在您的應用程序中登錄進行用戶身份驗

要回答你的第二個問題,不,除非你有獨特的需要/要求這樣做。原因:設置了asp.net成員資格,以便您可以使用一個成員資格數據庫託管多個可能不同的應用程序。這很好,因爲您不必爲每個站點創建一個不同的數據庫進行身份驗證。除非您將多個/不同的應用程序打到您提到的其他表中,否則您不必擔心爲用戶分配appID,因爲您的用戶已經登錄。

+0

感謝您的回答,但我仍然有一些的問題。當你說「你可以使用一個會員數據庫託管多個可能不同的應用程序」時,你的意思是什麼。 www.stackoverflow.com和www.superuser.com可以使用相同的會員資格數據庫?謝謝。 – 2010-12-07 01:34:41

+0

絕對。由於AppID可以設置爲對每個應用程序都是唯一的,因此您可以使用[email protected] APPID - SiteA和[email protected] APPID - SiteB,但沒有用戶名已經出錯。 – Tommy 2010-12-07 15:29:49

+0

如果您需要共享這兩個站點之間的登錄信息,您可以a)使APPID相同或b)自定義成員資格提供程序,以便能夠將來自一個APPID內用戶的信息複製到另一個APPID,儘管我會提醒此方法爲它可能會打開一些安全漏洞。 – Tommy 2010-12-07 15:31:12

相關問題