0

すべてのメンバーシップとデータを同じデータベースに保存したいと思います。まず、 MembershipDBというデータベースを作成し、aspnet_regsql.exeを使用してメンバーシップスキーマを追加しました。

インターネットASP.NETMVC4テンプレートを使用しています。これが接続文字列です

 <connectionStrings>
  <remove name="DefaultConnection"/>
  <add name="DefaultConnection" 
     connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=MembershipDB.mdf;
     Integrated Security=True;" 
      providerName="System.Data.SqlClient" />
 </connectionStrings>

ユーザーを作成すると、以前に作成したMembershipDBデータベースにデータが表示されません。代わりに、作成されたデータを含むMembershipDB.mdfという別のデータベースが表示されます。

データベースがデータを取得せず、代わりに同じ名前の別のデータベースが作成されているのはなぜですか?最初のコードは、同じ名前のデータベースが見つからない場合にのみ、新しいデータベースを作成することになっています。

助けてくれてありがとう。

4

3 に答える 3

1

接続文字列は、MembershipDBA.mdfの初期カタログ(データベース)を指定します。MembershipDBに変更します。.mdf部分は、データベースのデータ部分の単なる標準ファイル拡張子です。特にファイルに関係することを変更しない限り、それを参照する必要はありません。

于 2013-03-19T00:15:22.973 に答える
1
  1. .mdf拡張子を付けずに、接続文字列のようにデータベース名を使用するだけです。

  2. web.configのMembershipセクションでconnectionStringName="MembershipDB"を設定します

于 2013-03-19T00:31:50.087 に答える
0

最善のアプローチ(私はいつもそれを使用しています)は、これらの場合に他の人が何をしているのかを見て観察し、その後繰り返すことだと思います。

これは、EFとメンバーシップを一緒に使用する方法に関する記事です(ただし、EF 4.1であり、5ではありません)(そして、私があなたの質問を正しく理解した場合、これはあなたが求めているものです:

Entity FrameworkCodeFirstとASP.NETメンバーシップを一緒に使用する

SO(同じトピック)に関する質問に正常に回答しました(質問する前に、これをどのように見つけなかったのでしょうか):

複雑なデータをASP.Netメンバーシップテーブルに結合するための最良のデータベース設計アプローチ

これが役に立ったら教えてください。

于 2013-03-19T00:49:50.080 に答える