ASP.NET メンバーシップ (SQL Server) プロバイダーを使用してユーザーを管理しています。通常のユーザーの場合、質問/回答方式を使用してパスワードをリセットする必要があるため、requiresQuestionAndAnswer
フラグtrue
はweb.config
. しかし、管理者セクション (Web サイトのサブフォルダーにあります) では、パスワードのリセットを有効にする必要があります。質問の回答を入力する必要はありません。そのため、デフォルトでルート フォルダーからすべてを継承することを期待して、Admin サブフォルダーに別のサブフォルダーを追加しようとしましたweb.config
。次に、デバッグ構成とリリース構成の両方に対して、次の変換を適用しました。
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.web>
<membership>
<providers>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" requiresQuestionAndAnswer="false" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
</providers>
</membership>
</system.web>
</configuration>
Admin サブフォルダー自体のweb.config
は、含まれているだけであるという意味で空
<?xml version="1.0"?><configuration />
です。もちろん、ルート フォルダーのweb.config
. しかし、うまくいかないようです。パラメーターのないオーバーロードを呼び出そうとすると、ResetPassword()
Membership のメソッドでエラーが発生します。Value cannot be null
私は何を間違っていますか?