Repository 레이어가있는 WebAPI 프로젝트가 있습니다. 계정에 관한 방법, 나는 여기에 사용하는 방법을 잘 모르겠어요 : 나는 궁금하네요SimpleMembershipProvider 대 WebSecurity
public bool UserExists(string userName)
{
return WebSecurity.UserExists(userName);
}
또는
public bool UserExists(string userName)
{
return _membership.GetUser(userName, true) != null;
}
을 : 사용자가 존재하는 경우
public class RepositoryService : IRepositoryService
{
private readonly SimpleMembershipProvider _membership;
public RepositoryService()
{
_membership = (SimpleMembershipProvider)Membership.Provider;
}
가 확인하려면 다른 곳에서는 (예를 들어, 특정 사용자를 얻으려면) _ 멤버쉽을 사용해야한다고 생각하기 때문에 :
public MembershipUser GetUser(string userName)
{
return _membership.GetUser(userName, false);
}
그러나 _membership 및 WebSecurity를 사용해야한다는 것이 이상하게 보입니다. 둘 다 사용하는 것에 대해 "냄새 나는"것이 있습니까?
그들은 'LimitedMembershipProvider' 또는'SimpleMembershipWithConfusingUpgradePathProvider'라고 불러야합니다. –
멤버십 악취; VS2013에서도 마찬가지입니다. System.Web.Providers.DefaultMembershipProvider에서 암호를 다시 설정하는 방법 ** ... WebMatrix.WebData.WebSecurity 또는 Microsoft.Web.WebPages의 호출을 포함하여 SimpleMembershipProvider를 필요로하는 API로 기존 MembershipProvider (System.Web.Providers에있는 유니버설 공급자 포함)를 사용할 수 없습니다. OAuth.OAuthWebSecurity. ** [link] (http://weblogs.asp.net/jgalloway/archive/2012/08/29/simplemembership-membership-providers-universal-providers-and-the-new-asp-net- 4-5-web-forms-and-asp-net-mvc-4-templates.aspx) – subsci