1

WindowsAzure ステージング環境に MVC アプリケーションをデプロイしました。メンバーシップにはユニバーサル プロバイダーを使用しました。しかし、私は少し混乱しています。

私の混乱は、クラウドでそれらのアカウントにアクセスしようとしたときに、デプロイ後にローカル マシンにいくつかのアカウントを作成したことです。ユーザー名またはパスワードが間違っているというエラー メッセージが表示されましたが、ローカル マシンからそれらのアカウントにアクセスしている場合、何もありませんでした。エラーメッセージ。接続文字列を変更しませんでした。コンセプトを説明したり、参照リンクを教えてもらえますか?

4

2 に答える 2

1

それがどのように機能するかについてのコンセプトを尋ねたので、説明できます。MVC アプリで ASP.NET ユニバーサル プロバイダーを使用している場合は、それを構成できるデータベースが必要です。ほとんどの場合、SQLExpress は、Universal Provider がメンバーシップの詳細を格納するために使用するローカル データベースです。

アプリケーションをクラウド サービスとして Windows Azure にデプロイする場合、ローカル データベースが構成されていないため、ユニバーサル プロバイダーに対する既定の構成は機能しません。この問題を解決する最善の方法は、ローカルでテストしている場合でも、MVC アプリケーションのユニバーサル プロバイダーが SQL Database を使用するように構成することです。ローカル テストが完了し、アプリケーションを Windows Azure に展開すると、アプリケーションはまだ SQL データベースを指しているため、問題なく動作します (SQL データベースを適切に構成したことを考慮すると)。

この特定の記事では、MVC アプリケーションで SQLExpress または SQL データベースに接続するために使用されるさまざまな接続文字列を示しているため、それを使用して SQL DB を変更できます。

于 2012-08-29T17:23:48.120 に答える
0

に明示を設定する必要が<machineKey>ありますweb.config。そのキーは、セッションとメンバーシップに関連する多くのことに使用されます(Cookieやパスワードなど)。キーを明示的に指定しない場合、Windows Azureは展開ごとにキーを選択します。これにより、既存の認証Cookieと保存されているパスワードが無効になります。

于 2012-08-29T18:55:15.607 に答える