6

この mvc プロジェクトのローカル mdf ファイルに接続しているかのように単純なメンバーシップ プロバイダーを使用したいのですが、無料の Azure 試用版データベースにメンバーシップ テーブルが必要です。

UserProfile
webpages_membership
webpages_OAuthMembership
webpages_Roles
webpages_UsersInRoles

この接続を確立するための接続文字列の外観。

ローカルの mdf にローカルで接続すると、猫のお尻のように機能しますが、Azure でテーブルを構築しようとすることは十分に文書化されていません。

誰かがこれをしましたか?

OK、conn 文字列名が Filters > InitializeSimpleMembershipAttribute.cs ファイルの WebSecurity.InitializeDatabaseConnection メソッドに渡されるものと同じであることを確認する必要がありました。デフォルトでは DefaultConnection であるため、指定した接続文字列と一致する必要があります。紺碧のデータベース接続文字列.

だから今、私はVSからf5'dし、テーブルが作成されました.Facebookのログインをローカルでテストしたところ、動作しました.

しかし... Azure Web サイトにアプリケーションをデプロイすると、SQL に接続できないなどの 504 エラーでサイトがタイムアウトします。これは、Azure 内の SQL データベースと仮想データベースの両方で発生します。 sqlがインストールされ、tcpポート1433が有効になっているサーバー-私が言ったように、これはVSを使い果たしたときにローカルで機能し、紺碧のクラウドでは機能しません。

エラーが発生します。

リクエストの処理中にエラーが発生しました。

fiddler は、504 エラー ゲートウェイ タイムアウトとして表示します。シンプル ログイン メンバーシップ API を使用して、Azure で実行されている mvc 4 サイトを持っている人はいますか?

4

2 に答える 2

5

接続文字列を変更する必要がある場所が 2 つあります。1 つは InitializeSimpleMembershipAttribute.cs から、もう 1 つは AccountModels.cs ファイルにある public UsersContext() : base("DefaultConnection") { } DefaultConnection を conn 文字列名に置き換えます。

于 2012-11-26T15:54:26.467 に答える
0

あなたがしなければならないことが2つあります。1 つは、Azure から接続文字列を取得することです。データベースの Azure 用ダッシュボードに移動します。[接続文字列を表示] リンクが表示されます。それをクリックして、ADO.NET 文字列をコピーします。

また、テスト マシンの IP アドレスからデータベースへのアクセスを有効にする必要があります。ダッシュボードには、「許可された IP アドレスの管理」という別のリンクがあります。それをクリックして、IP アドレスを追加します。

Web.config の DefaultConnection 文字列を、Azure から取得したものに置き換えたところ、機能しました。ポータルで IP アドレスを取得する限り、テスト マシンからでも機能します。

于 2013-05-16T06:00:54.520 に答える