ASP.NETメンバーシッププロバイダとEntity Frameworkのロール実装では、EDMXファイル内のASPNETDB(Membershipデータベース)のすべてのビューをインポートする必要があります。例えばvw_aspnet_MembershipUsers、vw_aspnet_Roles、vw_aspnet_UsersInRoles、vw_aspnet_Usersなど
次に、メンバーシップはEF経由で実行されます。したがって、以下の機能を使用してGUIを提供することができます。
ここはコントローラコードです。例えば
// GET: /Membership/Edit/5
public ActionResult Edit(Guid id)
{
var recordToEdit = (from r in _db.vw_aspnet_Users where r.UserId == id select r).First();
return View(recordToEdit);
}
public ActionResult Index()
{
return View(_db.vw_aspnet_MembershipUsers.ToList());
}
は今、どのようにweb.configファイルで唯一の接続文字列を作るために、既存のデータベースへのASPNETDBをマージします。 (あなたの質問:なぜ私はちょうど1つを持っていないのですか?)
これは以下の手順でも可能です。
ASPNETDB.MDFは、メンバーシッププロバイダデータベースであり、 データベースのメンバーシップデータの格納および取得に使用されます。メンバーシッププロバイダデータベースの作成方法については、ここで説明します。 Aspnetdb.mdfを作成するコマンドは、ASPNET_RegSQL.EXEです。
1.Start-> Programs-> Microsoft Visual Studio 2005-> Visual Studio 2005-> Visual Studio 2005コマンドプロンプト。 Visual Studio 2005のコマンドプロンプト
「Asp.Net SQL Serverのウィザードへようこそ」という見出しでウィザードが表示されますでASPNET_RegSQL.EXEを入力します。ここをクリックしてください次へ
次の「セットアップオプションの選択」ウィザードが表示されます。ここで、セットアップオプション "アプリケーション目的のためのSQL Serverの設定はデフォルトです"を選択する必要があります。あなたが望むものと次のものを選択してください。
「Select Sql Server Database」のウィンドウが表示されます。次に、SQL Serverデータベースを選択する必要があります。ここでは、サーバー、認証タイプ、およびデータベースを設定する必要があります。 デフォルト名を選択すると、 "aspnetDb.mdf"が選択されます。既存のデータベースを変更する場合は、そのデータベースを選択します。
5.Now「Confirm your Settings」という見出しが表示されます。サーバー名とデータベース名を確認し、次へをクリックします。
- 「データベースが作成または変更されました」のウィンドウが表示されます。今完了
はあなたの既存のデータベースを選択する必要があり、上記の手順では注意してくださいをクリックして、メンバーシップとロールのいくつかのテーブル(11+)、ビュー、ストアドプロシージャは、既存のデータベースに追加されます....
お楽しみください....ありがとうございます...
最初にDbContextコードを使用している場合はどうすればよいですか? – DarthVader
コード1のアプローチでは、データベース上でExecuteSqlCommandメソッドを使用して、クエリ以外のコマンドをデータベースに送信できます。 context.Database.ExecuteSqlCommand( "<メンバーシップSQL>"); –
よくSQLクエリまたはストアドprocsに興味がありません。誰がそれらをもう使用していますか? – DarthVader