メンバーシップクラスの操作方法について学習しています。ASP.Netのメンバーシップ:別のデータベースに保存されたロール
aspnet_regsql.exeを使用してメンバーシップデータベースを自分のWebサイトのSQLデータベースに追加しました。これまでのところ問題なくユーザーを追加して追加できます。しかし、私はASP.Net構成ツールを使用していくつかの役割を追加することにしました。ロールは追加されましたが、SQLデータベースのaspnet_Rolesテーブルには表示されませんでした。
私はそれ以来、問題のWebサイトのVS2010 App_DataフォルダにASPNETDB.MDFを認識しており、そこにロールが表示されています。ユーザーは、そのデータベースに含まれていないが、私のweb.configファイルで構成されたSQL DBにあります。ユーザーが保存できる場合
<configuration>
<connectionStrings>
<add name="myConnString" connectionString="Data Source=SQLDB;Initial Catalog=myDatabase;User ID=myUser;Password=myPassword" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<authentication mode="Forms" />
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
<machineKey validationKey="LOTSOFNUMBERS"
decryptionKey="MORENUMBERS" validation="SHA1" decryption="AES"/>
<membership defaultProvider="SqlProvider">
<providers>
<clear/>
<add name="SqlProvider"
connectionStringName="myConnString"
type="System.Web.Security.SqlMembershipProvider"
applicationName="myApp"
requiresUniqueEmail="true"
minRequiredPasswordLength="8"
minRequiredNonalphanumericCharacters="0"
requiresQuestionAndAnswer="false"
passwordFormat="Encrypted"
enablePasswordRetrieval="true"
/>
</providers>
</membership>
<roleManager enabled="true" />
<pages theme="myTheme">
</pages>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</configuration>
、修正してから、私のデータベースにASP.Net設定ツールを使用して削除しました私はロールが同じことをすると期待していたでしょうか?何が足りないの?
MemberProviderと同じデータソースを使用するには、web.configでRoleProviderを設定する必要があります。 –