2011-08-25 4 views
5

aspnet_regsql.exeを使用してASP.NETメンバーシップテーブルをリモートデータベースにインストールしました。この技術を使って作業していた私が過去に作成したデータベースのテーブルはすべて正常に作成されたようです。 aspnet_regsqlは、プロセスが正常に完了したとも言います。ASP.NETメンバーシッププロバイダが正しく設定されていません - websit管理ツールを開くことができません

SQL Server管理スタジオでデータベースに接続してクエリを実行できます。 web.configファイルに以下のような関連設定が含まれています。


<connectionStrings> 
    <add name="ApplicationServices" connectionString="Data Source=**********;Initial Catalog=********;Integrated Security=false;User ID=*************;Password=******" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 

<membership> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices" 
      enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" 
      maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" 
      applicationName="/" /> 
     </providers> 
    </membership> 

    <profile> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
     </providers> 
    </profile> 

    <roleManager enabled="false"> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
     <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" /> 
     </providers> 
    </roleManager> 

私は、データベースの作品への接続を知っています。接続文字列が正しい。しかし、Webサイト管理ツールを使用してセキュリティの設定を開始すると、次のエラーが表示されます。

選択したデータストアに問題があります。これは無効なサーバー名または資格情報、または不十分なアクセス許可によって引き起こされる可能性があります。また、ロールマネージャ機能が有効になっていないために発生する可能性があります。下のボタンをクリックすると、新しいデータストアを選択できるページにリダイレクトされます。

次のメッセージは、問題の診断に役立ちます。「PVN.Web.MvcApplication」タイプを読み込めませんでした。


これは私が作成しようとしているMVC3アプリケーションです。そして、Webアプリケーションプロジェクトの名前はPNV.Webと呼ばれますが、私は 'PVN.Web.MvcApplication'が何であるか分かりません。

この上の任意の助けいただければ幸いです。

おかげ

答えて

2

私の問題は、自分の役割マネージャがfalseに設定されているようです。

<roleManager enabled="false"> 

これをtrueに設定すると、ウェブサイト設定ツールを問題なく使用でき、すべてが機能し始めたようです。

<roleManager enabled="true"> 
1

あなたは、ウェブサイト管理ツールを使用する前に、アプリケーションをコンパイルしましたか?サイトがコンパイルされる前は動作しません。

+0

コンパイルできない場合は、 "Global.asax"マークアップファイルが "Inherits"属性の "PVN.Web.MvcApplication"を参照していることを再度確認してください。プロジェクトを作成した後で名前空間を変更すると、これは更新されないことがあります。 –

1

アプリケーション名が設定されていません。

applicationName="/" /> 

アプリケーション名を設定し、それはあなたのデータベースのアプリケーション表に名前と一致することを確認してください。がんばろう。

0

私のデフォルトメンバーシッププロバイダは機能しましたが、aspnet_Applicationsテーブルでアプリケーションの名前を変更しました。それを行う場合は、web.config内のapplicationNameも変更する必要があります。