2012-12-02 13 views
12

Tworzę wiele szybkich "proof of concept" aplikacji MVC i faktycznie znalazłem dostawcę SimpleMembership, który dostarczany z szablonami MVC4, by był bardzo przydatny, ponieważ działa i działa z rejestracją użytkownika & OAuth w ciągu kilku minut.Systemy członkowskie dla MVC4, które obsługują RavenDB

Ale ... Zacząłem używać RavenDb (na RavenHQ dużo za moje projekty). Zacząłem więc próbować implementować mojego "dostawcę niestandardowego członkostwa" w oparciu o ExtendedMembershipProvider i robiąc to, zdałem sobie sprawę, że to nie ma większego sensu. I później natknął 2 ciekawych projektów, które próbują rozwiązać dokładnie ten problem:

oba są całkiem interesujące ostatnie wysiłki i zastanawiałem jeśli tylko są teraz budowane. Zasadniczo szukam nkget pkg, który mogę wpaść do aplikacji MVC4, połączyć się z moim RavenDb i gotowe. Jestem gotów to zbudować, ale nie chcę powielać żadnych wysiłków, które już są w ruchu. Thx!

+0

prostu biegł do tego artykułu przez Scott Allen, idzie jednak zarówno członkostwa EF i RavenDB. http://odetocode.com/blogs/scott/archive/2012/10/01/build-your-own-membership-system-for-asp-net-mvc-part-again.aspx –

+0

Masz gdziekolwiek z Twoje pytanie? co wykorzystałeś w końcu? – trailmax

+0

Rozwidlałem https://github.com/OdeToCode/Memflex zgodnie z moimi potrzebami. Działa całkiem bezsensownie. Ale słyszałem, że istnieje inny projekt (TBA), który rozwiąże ten sam problem. –

Odpowiedz

4

Istnieje kilka dostawców członkostwa ASP.Net dla RavenDB. Żadne z nich nie jest oficjalne, a wszystkie mają nieco inne implementacje. Google dla "dostawcy członkostwa ravendb", a znajdziesz wiele.

Istnieje dobry artykuł here porównujący kilka z nich z własnymi pakietami autoryzacji i uwierzytelniania Raven.

Zgadzam się z tobą, że powinno być łatwiej zamieniać SQL dla Ravena na różnych szablonach MVC4. Jednakże, oprócz polegania na dostawcy członkostwa, mają tendencję do posiadania modeli zaprojektowanych do współpracy z Entity Framework. Jeśli miałbyś napisać przykładowe szablony od podstaw z myślą o RavenDB, prawdopodobnie miałbyś zupełnie inny produkt końcowy.

Aktualizacja

Nie wiedziałam, że mówisz o nowym SimpleMembershipProvider. Nie wiedziałem, że to istnieje. Znalazłem Jon Galloway's article opisując go szczegółowo - wspaniałą lekturę. Wskazuje dwa kluczowe punkty, które są tutaj istotne. Cytuję:

Zauważ, że SimpleMembership nadal wymaga pewnego smaku SQL Server - nie będzie pracować z bazami danych MySQL, NoSQL, itd. Można spojrzeć na kod w WebMatrix.WebData.dll za pomocą narzędzie takie jak ILSpy, jeśli chcesz zobaczyć, dlaczego - są miejsca, w których SQL Server wykonuje określone instrukcje SQL, szczególnie podczas tworzenia i inicjowania tabel. Wygląda na to, że możesz pracować z inną bazą danych, jeśli utworzyłeś tabele osobno, ale nie wypróbowałem jej i nie jest ona w tym momencie obsługiwana.

...

Ważną rzeczą zabrać tutaj jest to, że SimpleMembershipProvider jest MembershipProvider, ale MembershipProvider nie jest SimpleMembershipProvider. To rozróżnienie jest ważne w praktyce: nie można użyć istniejącego programu MembershipProvider (w tym Universal Providers znalezionego w System.Web.Providers) z interfejsem API wymagającym SimpleMembershipProvider, w tym dowolnych wywołań w WebMatrix.WebData.WebSecurity lub Microsoft.Web.WebPages.OAuth.OAuthWebSecurity.

Chciałbym zebrać wtedy, że napisanie SimpleMembershipProvider dla RavenDB nie byłoby możliwe.

+0

Tak, mam googled "dostawcę członkostwa ravendb" i znajduję 1 lub 2 inne projekty oparte na MVC3 i nie obsługuje OAuth, co stanowi 50% tego, czego szukam. Jestem również świadomy pakietu auth RavenDb, ale to obsługuje "użytkowników systemu", a nie to, czego szukam (użytkownicy aplikacji). Dzięki. –

+0

Wygląda na to, że większość ludzi odpowiada na te pytania dotyczące członkostwa bez znajomości nowego dostawcy SimpleMembership. – CodeMonkeyKing

+1

@CodeMonkeyKing - Głupi jak naładowany. :) Odpowiedź zaktualizowana. –

Powiązane problemy