C# SqlMembershipProvider:使用我自己的数据库作为用户存储数据库
我正在用Visual Studio 2008 SP1和C开发一个ASP.NET应用程序。我还使用了SQLServer2008SP1 我正在尝试将使用命令C# SqlMembershipProvider:使用我自己的数据库作为用户存储数据库,c#,asp.net,sql-server-2008,membership-provider,C#,Asp.net,Sql Server 2008,Membership Provider,我正在用Visual Studio 2008 SP1和C开发一个ASP.NET应用程序。我还使用了SQLServer2008SP1 我正在尝试将使用命令aspnet\u regsql-S(local)-E-am创建的表添加到我自己的数据库中 如果我运行该命令,它将创建一个包含四个表的数据库(Aspnetdbdatabase)。我想知道是否有一个命令可以在我自己的数据库中创建这些表(例如称为myDatabase) 并且,当创建表时。如何将身份验证连接到myDatabase 谢谢根据“”的输出,您可
aspnet\u regsql-S(local)-E-am
创建的表添加到我自己的数据库中
如果我运行该命令,它将创建一个包含四个表的数据库(Aspnetdbdatabase)。我想知道是否有一个命令可以在我自己的数据库中创建这些表(例如称为myDatabase)
并且,当创建表时。如何将身份验证连接到myDatabase
谢谢根据“”的输出,您可以使用一个参数-d,从而使您的命令:
aspnet_regsql -S (local) -E -A -d myDatabase
或者,您可以使用“-sqlexportonly filenameges.here”参数调用它,以生成一个Sql脚本,您可以查看该脚本,然后将其应用于数据库:
aspnet_regsql -S (local) -E -A -sqlexportonly output.sql
的MSDN文档说明了如何更改其数据库的查找位置,特别是示例中的行connectionStringName=“SqlServices”。您可以指定
-C
选项,而不是-S(local)
选项,并在连接字符串中指定数据库名称。这允许在现有数据库上运行创建脚本。有关aspnet_regsql选项,请参阅
aspnet_regsql-C "Data Source=.\SQLEXPRESS;Integrated Security=True;User Instance=True" ...
将在数据库中生成连接字符串
此外,还应配置MembershipProvider以使用数据库。只需将其添加到web.config
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=.\SQLEXPRESS;Integrated Security=True;User Instance=True" />
</connectionStrings>
<system.web>
<authentication mode="Forms" >
<forms loginUrl="login.aspx"
name=".ASPXFORMSAUTH" />
</authentication>
<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>
</system.web>
</configuration>