12

私は多くの簡単な「概念実証」MVC アプリを作成していますが、MVC4 テンプレートに同梱されている SimpleMembership プロバイダーは非常に便利であることがわかりました。ユーザー登録と OAuth を数分で実行できるからです。

しかし...私はRavenDbを使い始めました(私のプロジェクトではRavenHQで)。そのため、ExtendedMembershipProvider に基づいて独自の「カスタム メンバーシップ プロバイダー」を実装しようと試み始めましたが、それはあまり意味がないことに気付きました。私は後で、この正確な問題を解決しようとする 2 つの興味深いプロジェクトに出くわしました。

どちらも非常に興味深い最近の取り組みであり、現在構築されているのはこれらだけではないかと考えていました。私は基本的に、MVC4 アプリにドロップし、RavenDb に接続して完了できる nuget pkg を探しています。私はこれを構築したいと思っていますが、すでに動いている努力を複製したくありません. どうも!

4

2 に答える 2

4

RavenDBにはいくつかのASP.Netメンバーシッププロバイダーがあります。それらのどれも公式ではなく、それらはすべてわずかに異なる実装を持っています。「ravendbメンバーシッププロバイダー」のグーグルとあなたは多くを見つけるでしょう。

それらのいくつかをRaven独自の承認および認証バンドルと比較した良い記事がここにあります。

さまざまなMVC4テンプレートでSQLをRavenに交換する方が簡単なはずだということに同意します。ただし、メンバーシッププロバイダーに依存することに加えて、EntityFrameworkで動作するように設計されたモデルを使用する傾向があります。RavenDBを念頭に置いてサンプルテンプレートを最初から作成する場合は、最終製品が大きく異なる可能性があります。

アップデート

あなたが新しいことについて話していることに気づかなかったSimpleMembershipProvider。私はこれが存在することに気づいていませんでした。私はそれを詳細に説明しているJonGallowayの記事を見つけました-素晴らしい読み物です。彼はここで関連する2つの重要なポイントを指摘します。私は引用します:

SimpleMembershipにはまだSQLServerのフレーバーが必要であることに注意してください。これは、MySQL、NoSQLデータベースなどでは機能しません。必要に応じて、ILSpyなどのツールを使用してWebMatrix.WebData.dllのコードを確認できます。理由-特にテーブルの作成と初期化の際に、SQLServer固有のSQLステートメントが実行される場所があります。テーブルを個別に作成すると、別のデータベースで作業できるように思われますが、私は試していません。現時点ではサポートされていません。

..。

ここで重要なことは、SimpleMembershipProviderはMembershipProviderですが、MembershipProviderはSimpleMembershipProviderではないということです。この区別は実際には重要です。WebMatrix.WebData.WebSecurityまたはMicrosoft.Webの呼び出しを含め、SimpleMembershipProviderを必要とするAPIで既存のMembershipProvider(System.Web.Providersにあるユニバーサルプロバイダーを含む)を使用することはできません。 WebPages.OAuth.OAuthWebSecurity。

SimpleMembershipProviderその場合、RavenDB用のを作成することは不可能であるということを収集します。

于 2012-12-02T17:01:12.343 に答える