Membership Role Provider phần 4
Phần này là phần quan trọng mình sẽ hướng dẫn Custom Membership Role Provider using Entity Frawork (edmx).
Mình đã hướng dẫn các bạn sử dụng Membership Role Provider mặc định của AspNet.Identity do nhược điểm điều chỉnh khá phức tạp và không thể sử dụng Entity Framwork nên mình viết bài này.
Đây cũng là hướng mình thường sử dụng để làm phần mềm hoặc code.
Trước hết các bạn xem cấu trúc của database
Các bạn có thể tải file database.sql ở đây: INIVN.sql
Lưu ý các bảng khi sử dụng Entity Framework không được sử dụng các bảng như Application, System.... các từ khóa của thư viện hệ thống vì khi tạo các bản này Entity Framework sẽ sinh ra các lớp này sẽ phát sinh lỗi mà các bạn sẽ không biết thể xác định.
Trong project bạn tạo thư mục SecurityINI
Tạo các class:
INIVNWMembership.cs
INIVNWRole.cs
INIVNSecurity.cs
INIVNWProfile.cs
Kế thừa MembershipProvider đây là abstract sẽ tạo ra các phương thức mặc định override sau: ApplicationName, EnablePasswordReset, EnablePasswordRetrieval,
MaxInvalidPasswordAttempts, MinRequiredNonAlphanumericCharacters....
Trong Class
INIVNWRole.cs
Mình đã hướng dẫn các bạn sử dụng Membership Role Provider mặc định của AspNet.Identity do nhược điểm điều chỉnh khá phức tạp và không thể sử dụng Entity Framwork nên mình viết bài này.
Đây cũng là hướng mình thường sử dụng để làm phần mềm hoặc code.
Trước hết các bạn xem cấu trúc của database
Các bạn có thể tải file database.sql ở đây: INIVN.sql
Lưu ý các bảng khi sử dụng Entity Framework không được sử dụng các bảng như Application, System.... các từ khóa của thư viện hệ thống vì khi tạo các bản này Entity Framework sẽ sinh ra các lớp này sẽ phát sinh lỗi mà các bạn sẽ không biết thể xác định.
Trong project bạn tạo thư mục SecurityINI
Tạo các class:
INIVNWMembership.cs
INIVNWRole.cs
INIVNSecurity.cs
INIVNWProfile.cs
Trong Class
INIVNWMembership.csKế thừa MembershipProvider đây là abstract sẽ tạo ra các phương thức mặc định override sau: ApplicationName, EnablePasswordReset, EnablePasswordRetrieval,
MaxInvalidPasswordAttempts, MinRequiredNonAlphanumericCharacters....
Trong Class
INIVNWRole.cs
Kế thừa RoleProvider đây là abstract sẽ tạo ra các phương thức mặc định override sau:
AddUsersToRoles, CreateRole, DeleteRole, FindUsersInRole,....
INIVNSecurity.cs
Các lớp gọi từ các lớp của INIVNWMembership.cs và INIVNWRole.cs
Các bạn có thể tham khảo code codefirstmembership
Link:
https://codefirstmembership.codeplex.com/releases/view/80414
Mình đã chuyển sang và sử dụng Entity Framework thành file SecurityINI.zip
Các bạn có thể cấu hình vào file Web.config kết thừa membership của asp.net
trong thẻ system.web
<profile defaultProvider="DefaultProfileProvider">
<providers>
<add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</profile>
<membership defaultProvider="INIVNWMembership">
<providers>
<add name="INIVNWMembership" type="demo8.SecurityINI.INIVNWMembership" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
</providers>
</membership>
<roleManager defaultProvider="INIVNWRole">
<providers>
<add name="INIVNWRole" type="demo8.SecurityINI.INIVNWRole" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</roleManager>
Các bạn cấu hình vào mục Name và type.
INIVNSecurity.cs
Các lớp gọi từ các lớp của INIVNWMembership.cs và INIVNWRole.cs
Các bạn có thể tham khảo code codefirstmembership
Link:
https://codefirstmembership.codeplex.com/releases/view/80414
Mình đã chuyển sang và sử dụng Entity Framework thành file SecurityINI.zip
Các bạn có thể cấu hình vào file Web.config kết thừa membership của asp.net
trong thẻ system.web
<profile defaultProvider="DefaultProfileProvider">
<providers>
<add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</profile>
<membership defaultProvider="INIVNWMembership">
<providers>
<add name="INIVNWMembership" type="demo8.SecurityINI.INIVNWMembership" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
</providers>
</membership>
<roleManager defaultProvider="INIVNWRole">
<providers>
<add name="INIVNWRole" type="demo8.SecurityINI.INIVNWRole" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</roleManager>
Các bạn cấu hình vào mục Name và type.
Post A Comment:
0 comments so far,add yours