8

MVC4RCのデフォルトテンプレートを使用してログインを有効にしようとしています。MVC 3、Aspnet_regsql.exe->SQLサーバーと同じ方法で実行しました。次に、接続文字列がSQLサーバーを指すようにしました。

新しいユーザーを登録しようとすると、次のようになります。

Server Error in '/' Application.

Invalid column name 'ApplicationId'.
Invalid column name 'UserName'.
Invalid column name 'ApplicationId'.
Invalid column name 'UserId'.
Invalid column name 'UserName'.
Invalid column name 'IsAnonymous'.
Invalid column name 'LastActivityDate'.

AccountControllerのエラー:

              Line 85: // Attempt to register the user
              Line 86: MembershipCreateStatus createStatus;
Error here -> Line 87: Membership.CreateUser(model.UserName, model.Password, model.Email, passwordQuestion: null, passwordAnswer: null, isApproved: true, providerUserKey: null, status: out createStatus);
              Line 88:
              Line 89: if (createStatus == MembershipCreateStatus.Success)

私はこのエラーをグーグルで検索しようとしてきましたが、今のところ運がありません。MVC 4でこれを行う必要がある他の方法はありますか?

4

1 に答える 1

10

aspnet_regsql.exeバージョン2.xのメンバーシップテーブルを使用していたため、同じエラーが発生しました。aspnet_regsql.exeバージョン2.xフォルダーで実行可能ファイルを実行し、テーブルをアンインストールしました。次に、上記の実行可能ファイルを使用する必要がなくなった新しいユニバーサルプロバイダーを使用すると、最初に接続したときにテーブルが作成されます。

この記事では、古いaspnet_Memembershipとユニバーサルプロバイダーの違いについて詳しく説明します。

より強力なパスワードを持つネット

記事の要点:

まず、これ以上はありませ aspnet_regsqlん。接続文字列が設定され、アカウントにDBO権限があることを確認してから(心配しないでください。このままにする必要はありません)、アプリを実行して、必要なアクションを実行してみてください。メンバーシッププロバイダーにDBをヒットさせます(つまり、ログオンします。アカウントがなくてもかまいません)。

それがすべてです。

于 2012-08-15T11:32:15.750 に答える