0

小さなウェブアプリを作りたいです。カスタムメンバーシッププロバイダーを作成する方法についていくつかの記事を読みましたが、何かがはっきりしていません。カスタムDBを作成したり、このDBをエンティティフレームワークにマップしたりできますか、またはaspnetsql_tool.exe(正確ではありません)を使用する必要がありますか?DBにはユーザーとのテーブルがあり、他のテーブルとの関係にあります。それで、あなたは私に何を勧めますか?カスタムプロバイダーでEFを使用するのは良いアプローチですか?ありがとう

4

2 に答える 2

1

カスタムDBを作成し、それをEFでマップできます。データベーステーブルを生成するツールを使用する必要はありません。

このウォークスルーを実行します:カスタムメンバーシッププロバイダー

ODBCコードを削除し、そこにEFコードを配置する必要があります。これで、ほとんどの処理が実行されます。


コンテキストが返すデータを注意深く監視する必要があります。グローバルコンテキストの場合、データが古くなる可能性があります。

EFコンテキストのインスタンス化(リンクを確認しただけで、もう機能していないようですが、戻ってきた場合に備えて、ここに残しておきます)


私を助けたいくつかのリンク:

http://dotnetunplugged.com/2011/04/05/openfaq-part-3-custom-membership-provider-in-entity-framework-code-first/


また、これが役立つ場合があります。

http://efmembership.codeplex.com/

https://github.com/OmidID/Ado.net-Entity-Framework-Membership-Provider

于 2013-03-20T13:09:15.397 に答える
1

カスタムメンバーシッププロバイダーは、任意のメカニズムとDB構造を使用できるため、ここではEntityFrameworkが他のORMフレームワークと同じように適切です。を選択aspnet_regsql.exeすると、DB構造がセットアップされますが、この構造を簡単に変更することはできません。EFを使用してこのデータベースをマッピングすることは、ASP.NETの将来のバージョンで変更される可能性があるため、お勧めできません。

つまり、カスタムによって作成されたデフォルトのメンバーシップDB構造を選択するかaspnet_regsql.exe、既存のテーブルを使用してカスタムプロバイダーを自分で実装するかのどちらかです。

于 2013-03-20T13:11:59.600 に答える