0

我已經創建了我的大學網站,要求會員。 我從Visual Studio中使用Web管理工具和創建的用戶和Rules.When我測試了從Visual Studio它工作正常。 Web管理工具自動創建該成員保存數據App_Data文件夾命名ASPNETDB.MDF SQL數據庫。 我的問題是,當我在IIS上添加網站時數據庫會工作嗎?我必須創建一個sql server數據庫並添加一個連接嗎?請回答我。這真的很重要。 我只想要一個非常基本的會員資格。Web管理工具數據庫,IIS

回答

0

你可以使用db/from/App_Data來解釋這個答案:
ASP.NET: How to deploy App_Data to webhost? - 但這取決於你的服務器設置。

當使用會員我的偏好是從任一SQL/SQL Express的一個單獨的數據庫運行它,然後作爲有選擇如果需要在不同的服務器上運行的IIS網站和數據庫。同樣出於安全性更好/縮放等

一旦數據庫被創建,您可以使用aspnet_regsql.exe的,以會員服務安裝到分貝。它通常位於此處 - c:\ Windows \ Microsoft.NET \ Framework \ < versionNumber> \ aspnet_regsql.exe。可以運行的GUI或命令行:
http://msdn.microsoft.com/en-us/library/x28wfk74.aspx

當從一個單獨運行的會員數據庫,你還需要配置在web.config中的供應商。沿此線的東西:

<connectionStrings> 
    <remove name="LocalSqlServer" /> 
    <add name="MyMembershipConnectionString" 
    connectionString="Data Source=SERVER123\SQLEXPRESS;Initial Catalog=Database123;Persist Security Info=True;User ID=User123;Password=Password123" providerName="System.Data.SqlClient" /> 
</connectionStrings> 

在< system.web>部分:

<roleManager defaultProvider="MySqlRoleProvider" enabled="true" 
    cacheRolesInCookie="true" cookieName=".ASPROLES" cookieTimeout="30" 
    cookiePath="/" cookieRequireSSL="false" cookieSlidingExpiration="true" cookieProtection="All"> 
    <providers> 
    <clear /> 
    <add name="MySqlRoleProvider" type="System.Web.Security.SqlRoleProvider" 
     connectionStringName="MyMembershipConnectionString" applicationName="MyAppName" /> 
    </providers> 
</roleManager> 

<membership defaultProvider="MySqlMembershipProvider" userIsOnlineTimeWindow="720"> 
    <providers> 
    <clear /> 
    <add name="MySqlMembershipProvider" 
     type="System.Web.Security.SqlMembershipProvider" 
     connectionStringName="MyMembershipConnectionString" 
     enablePasswordRetrieval="false" 
     enablePasswordReset="true" 
     requiresQuestionAndAnswer="false" 
     requiresUniqueEmail="true" 
     passwordFormat="Hashed" 
     minRequiredPasswordLength="8" 
     minRequiredNonalphanumericCharacters="0" 
     passwordStrengthRegularExpression="((?=.*\d)(?=.*[a-z]).{6,20})" 
     maxInvalidPasswordAttempts="5" 
     passwordAttemptWindow="30" /> 
    </providers> 
</membership> 

我已經使用了類似的設置,這一個好幾圈,沒有任何問題。 如果使用DB從/的App_Data你不需要做任何的Web.config東西