ASP.NET 2.0 如何將MemberShip的資料庫建立在自己的資料庫上
ASP.NET 2.0可以透過Web Site Administration Tool來建立使用者登入的機制,並且可以有腳色管理的機制,不過一般使用的時候,都會在Web Site中的App_Data這個資料夾中產生一個MDF的檔案,這個檔案是SQL的資料庫檔案。然而如果我們需要與自己的資料表做相關的處理時,卻沒有這麼容易,畢竟我們其他會用到使用者的資料表不會建在那個MDF中,那麼要做Join就不是粉方便了
步驟一:建立自有的資料庫(如果已經存在省略)
步驟二:使用Aspnet_regsql.exe建立相關資料表
該檔案建立於您電腦中\Microsoft.NET\Framework\中的目前版本的目錄下(小喵的是在c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727),執行後就會啟動一個精靈,輸入主機、連線方式、帳號、密碼後,選擇資料庫,接著就會把相關資料表建立在您所選擇的資料庫中。
步驟三:設定Web.config
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=IBM-MJ8JNYV1URH\SQLEXPRESS;Initial Catalog=DBBD;Persist Security Info=True;User ID=sa;password=xxxxxx"></add>
</connectionStrings>
<system.web>
<roleManager enabled="true" defaultProvider="SqlProvider" >
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="SqlServices"
applicationName="MyApplication"
/>
</providers>
</roleManager>
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="15">
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
applicationName="MyApplication"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10" />
</providers>
</membership>
<authentication mode="Forms" >
<forms loginUrl="login.aspx"></forms>
</authentication>
</system.web>
步驟四:在設定Web Site Administration Tool
此時看一下Provider應該會是指定的SqlServices,而建立的User,Roles也會在您ConnectionString指定的資料庫中建立了
^_^
以下是簽名:
- 歡迎轉貼本站的文章,不過請在貼文主旨上加上【轉貼】,並在文章中附上本篇的超連結與站名【topcat姍舞之間的極度凝聚】,感恩大家的配合。
- 小喵大部分的文章會以小喵熟悉的語言VB.NET撰寫,如果您需要C#的Code,也許您可以試著用線上的工具進行轉換,這裡提供幾個參考
Microsoft MVP Visual Studio and Development Technologies (2005~2019/6) | topcat Blog:http://www.dotblogs.com.tw/topcat |