私はSQL MVC 3プロジェクトを持っています。ここでは、SQLメンバーシッププロバイダとエンティティフレームワークを使用しています。データベースを使用してSQLメンバーシッププロバイダとエンティティフレームワークを動作させるにはどうすればいいですか?
SQLサーバーに新しいデータベースを作成し、メンバーシッププロバイダのすべてのオブジェクトをaspnet_regsql.exe
を使用して作成しました。接続文字列を変更しても問題ありません。
今、DB相互作用のためのエンティティフレームワークを使用したいと思います。私はCode-Firstを使用しているので、簡単なエンティティクラスを作成し、データをdbに保存して取得することができます。
エンティティフレームワークがデータを保持する場所はミステリーです。私は自分のプロジェクトでデータベースを見つけることができず、私のSQLデータベースには新しいテーブルがありません。
web.configに2番目の接続文字列を追加すると(最初はメンバーシッププロバイダ用です)、エンティティフレームワークが機能しなくなりますが、私のDBに新しいテーブルを作成するはずです。
私のエンティティクラスは、次のようになります。
public class MyEntities : DbContext {
public DbSet<Business> Businesses { get; set; }
}
そして、私は例外Invalid object name 'dbo.Businesses'
に任意の助けを得ている非常に理解されるであろう。
私の接続文字列は次のようになります。
<add name="ApplicationServices"
connectionString="Data Source=.;
Initial Catalog=MyDbName;
Persist Security Info=True;
User ID=sa;
Password=mypassword"
providerName="System.Data.SqlClient"
/>
<add name="MyEntities"
connectionString="data source=.;
Initial Catalog=MyDbName;
Persist Security Info=True;
User ID=sa;
Password=mypassword"
providerName="System.Data.SqlClient"
/>
返信いただきありがとうございます。私がメンバーシッププロバイダをカスタマイズしたくないという真実を述べるために、私は自分自身でそれを動作させ、エンティティフレームワークを使って自分のデータを保持したいだけです。私はエンティティフレームワークを自分のデータベースにすることはできません:( – Burjua
まず、データベースを使用して、メンバーデータベースを使ってedmxファイルを作成してください。その後、EFとメンバーシッププロバイダを経由してDBにアクセスします。 –
、私はシンプルなモデルを生成し、テーブルが私のDBに作成されて参照してください、それは愚かな音だが、今私は自分のモデルを使用する方法を見つけることができませんどのように私はそこにneのエントリを追加することができますか? – Burjua