0

我有一个带有存储库层的 WebAPI 项目。对于与帐户相关的方法,我不确定在这里使用哪种方法:

public class RepositoryService : IRepositoryService
    {
        private readonly SimpleMembershipProvider _membership;
        public RepositoryService()
          {
            _membership = (SimpleMembershipProvider)Membership.Provider;
          }

检查用户是否存在:

    public bool UserExists(string userName)
    {
        return WebSecurity.UserExists(userName);
    }

或者

public bool UserExists(string userName)
{
    return _membership.GetUser(userName, true) != null;
}

我想知道,因为在其他地方我认为我必须使用 _membership (例如,获取特定用户):

public MembershipUser GetUser(string userName)
    {
        return _membership.GetUser(userName, false);
    }

但是我必须使用 _membership 和 WebSecurity 似乎很奇怪。两者都使用有什么“臭味”吗?

4

1 回答 1

0

以下似乎表明您没问题:

来自MSDN 文档http://msdn.microsoft.com/en-us/library/gg547905%28v=vs.111%29.aspxWebSecurity class

在幕后,WebSecurity 类与 ASP.NET 成员资格提供程序交互,后者依次执行执行安全任务所需的较低级别的工作。ASP.NET 网页中的默认成员资格提供程序是 SimpleMembershipProvider 类。

于 2013-04-17T21:32:30.267 回答