2014-07-16 2 views
0

위의 방법으로 사용자 account.This 만드는 방법을 사용하는 mvc4 기본 인터넷 프로젝트에서 일하고있다. 나를 위해 잘 작동하지만 사용자 이름이 이미 기본 데이터베이스에 있는지 확인하는 방법을 이해할 수 없습니다.** WebSecurity.CreateUserAndAccount() **는 사용자 이름이 이미 데이터베이스에 있는지 확인합니다.

저는 MVC 4에 비교적 익숙합니다. 제발 도와주세요.

+1

_Maybe_ WebSecurity.CreateUserAndAccount 다음 코드를 포함 SimpleMembershipProvider.CreateAccount에 간접적 인 호출을? –

+0

[WebSecurity.CreateUserAndAccount Method] (http://msdn.microsoft.com/en-us/library/webmatrix.webdata.websecurity.createuserandaccount (v = vs.111))를 확인하지 않습니다. .aspx) – crashmstr

+1

@crashmstr (문서가 그곳에있는 것은 아닙니다.) 기본 MembershipProvider는 web.config 설정에 따라 다른 조건 (암호 요구 사항, 중복 된 전자 메일 및 기타 내용)을 검사합니다. –

답변

2

WebSecurity 클래스는 SimpleMembershipProvider 클래스의 래퍼입니다.

// Step 2: Check if the user exists in the Membership table: Error if yes. 
var result = db.QuerySingle(@"SELECT COUNT(*) FROM [" + MembershipTableName + "] WHERE UserId = @0", uid); 
if (result[0] > 0) 
{ 
    throw new MembershipCreateUserException(MembershipCreateStatus.DuplicateUserName); 
} 

당신이있어 WebSecurity의 소스 코드를 확인할 수 있습니다 : (간접적으로 MembershipProviderEx 통해) 쿼리 http://aspnetwebstack.codeplex.com/SourceControl/latest#src/WebMatrix.WebData/WebSecurity.cs

관련 문제