BETA
Aby się zalogować, najpiew wybierz portal.
Aby się zarejestrować, najpiew wybierz portal.
Podaj słowa kluczowe
Słowa kluczowe muszą mieć co najmniej 3 sąsiadujące znaki alfanumeryczne
Pole zawiera niedozwolone znaki

Baza wiedzy











Użycie SimpleMembership w ASP.NET MVC 4 cz. 2

08-09-2014 07:00 | Krzysztof Pruszyński
W tej części artykułu utworzymy bazę danych oraz skonfigurujemy aplikację asp.net MVC w celu użycia SimpleMembership.

Utworzenie bazy danych

Aby zacząć pracę z SimpleMembersip musimy najpierw stworzyć nową bazę danych w SQL Server. Zrobimy to przy użyciu Managament Studio czyli systemem zarządzania bazą danych.

  1. Otwórz SQL Server Management Studio.

  2. Stwórz bazę danych o nazwie UserDb.

  3. Stwórz tabelę o nazwie Users i uzupełnij ją tak jak na poniższym rysunku (Rys. 1 Schemat tabeli Users.):

 

Rys. 1 Schemat tabeli Users.

Jak widać jest to niestandardowa tabela. SimpleMembership w przypadku podstawowej tabeli Users oczekuje tylko dwóch prostych kolumn w schemacie tabeli:

  • Powinien posiadać kolumnę, która jednoznacznie identyfikuje użytkownika ( w naszym przypadku jest to kolumna Id)

  • Powinien posiadać kolumnę, która odpowiada za login użytkownika ( w naszym przypadku jest to kolumna UserName)

Interesującą rzeczą jest fakt, że możemy nadać dowolną nazwę tym dwóm kolumnom. Na przykład w przedstawionej wyżej tabeli kolumna, która zawiera klucz główny użytkownika jest nazwana jako Id, ale równocześnie dobrze możemy ją nazwać jako UserID lub Uid. Także możemy zauważyć, że tabela Users zawiera kolumny, które nie są używane przez SimpleMembership provider czyli: DisplayName i Country. Te kolumny są niestandardowymi elementami naszej aplikacji i zależą od nas wraz informacjami jakie będziemy w nich przechowywać.

Konfiguracja aplikacji MVC w celu użycia SimpleMembership

Abyśmy zobaczyli SimpleMembership w akcji musimy wykonać następujące czynności:

  1. W kreatorze projektów utworzyć aplikację MVC 4, która będzie używała silnik widoku Razor (Rys. 2 Widok kreatora projektu MVC 4.):

 

Rys. 2 Widok kreatora projektu MVC 4.

Dodaj bibliotekę WebMatrix.WebData używając funkcji Add Reference, która dostępna jest po wciśnięciu prawego przycisku myszy w obszarze solucji projektu.

Samo dodanie biblioteki nie jest wystarczające. Dlatego musimy „powiedzieć” naszej aplikacji aby użyła providera. Zrobimy to modyfikując plik web.config.

  1. Otwórz plik web.config i włącz autoryzację formularzy dla aplikacji (Forms authentication):

<system.web>

<authentication mode="Forms">

<forms loginUrl="~/Account/Login" />

</authentication>

</system.web>

Z powyższego kodu wynika, że ustawiliśmy autoryzację poprzez formularz oraz adres url pod który będziemy odsyłani w celu zalogowania się do naszej aplikacji. W następnej części stworzymy kontroler Account, jednak teraz musimy dodać kolejne ustawienia w web.config które opisują użyty provider:

  1. W pliku web.config napisz:

<system.web>

<membership defaultProvider="p1">

     <providers>

       <add name="p1" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData"/>

     </providers>

    

   </membership>

 

   <roleManager enabled="true">

     <providers>

       <add name="p1" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData"/>

     </providers>

   </roleManager>

</system.web>

Jak możemy zauważyć atrybuty <providers> oraz <membership> określają typ dostawcy jakim jest WebMatrix.WebData.SimpleMembershipProvider. Także musimy upewnić się czy mamy ustawiony atrybut <roleManager> na wartość True, który włącza funkcję zarządzania rolami.

Na koniec musimy dodać connetionString aby mieć dostęp do stworzonej wcześniej przez nas tabeli.

  1. W pliku web.config wpisz:

<configuration>

<connectionStrings>

<add name="UserDb" connectionString="w tym miejscu wklejamy nasz connectionstring" providerName="System.Data.SqlClient" />

</connectionStrings>

</configuration>

 

Podsumowanie

W tej części artykułu utworzyliśmy i skonfigurowaliśmy bazę danych potrzebną do dalszej przygody z SimpleMembership. W następnym artykule zaimplementujemy niestandardową rejestrację w naszej aplikacji. Adres do kolejnej części znajdziecie pod tym linkiem:

Źródło: http://www.codeguru.com/csharp/.net/net_asp/mvc/using-simplemembership-in-asp.net-mvc-4.htm

Podobne artykuły

Komentarze 0

pkt.

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.