0

奇妙な動作が見られますが、私にはわからない簡単な説明があると確信しています。

Visual Studio 2012 RC、MVC 4 を使用して、標準のインターネット アプリケーションを作成しました (フォーム認証を使用)。次に、aspnet_regsql を使用してメンバーシップ テーブルをデータベースに追加しました。次に、カスタム データベースを指すように Web.config 接続文字列を更新しました。

<add name="NewEdCoConnectionString" connectionString="Data Source=localhost\sqlexpress2012;Initial Catalog=NewEdCo;Integrated Security=True" providerName="System.Data.SqlClient" />

そしてもちろん、その接続文字列を使用するように Web.config のプロバイダー ノードを更新しました。

それは正常に動作します。通常の IIS Express でアプリケーションを起動し、ユーザーを登録し、そのユーザーとしてログインすることができます。アプリケーションを強制終了し、再起動しても、そのユーザーとしてログインできます。したがって、データを永続化しています。

ただし、SQL Server Management Studio ではSELECT * FROM、aspnet_* テーブルのいずれかにデータが含まれていません。

このデータはどこに保存されていますか?

4

2 に答える 2

1

@Aristosが上記の質問へのコメントでほのめかしたようにそれは判明しました。別のデータベースを使用していましたが、現在どのよう使用するかはわかりません。データベース間の違いは次のとおりです。

localhost\SQLEXPRESS2012

対。

DAVIDDONAHU436A\SQLEXPRESS2012

これがネットワーク環境の場合、指定されたホストはローカルホストではないと思います。ただし、これはサンドボックス化されたVMです。問題のホストがその名前であることを確認しました。どういうわけか、異なるホスト名エントリにバインドされた同じホスト上に同じ名前の2つのSQLインスタンスがあります。

変。

于 2012-06-04T22:22:42.663 に答える
-1

それ以降のバージョンでは、データは aspnet_... に保存されませんが、ユーザーとロールに保存されます。ここで詳細を確認してください: Aspnet Web サイト管理ツール、Users テーブルまたは aspnet_users テーブル

于 2012-06-04T20:41:26.303 に答える