2015-01-21 2 views
1

사용자 등록을 위해 ASP.net ID 프레임 워크의 기본 템플릿을 사용하고 있습니다. 문제는 어떤 사용자도 제거 할 수 없다는 것입니다. "기본 멤버십 제공자를 지정해야합니다."라는 오류가 나타납니다. 나는 기본 멤버쉽 공급자를 지정해야하고 그 다음에 사용자를 단순히 삭제하기 위해 Membership.Delete(..);을 사용해야한다는 것을 알고 있습니다. 하지만 문제는 회원 기본 공급자를 구성 할 수 없다는 것입니다. 많이 찾았지만 모든 링크는 웹 폼 프로젝트에서 찾을 수없는 "ASP.NET 구성"마법사를 사용하는 것이 좋습니다! 여기에 사용자가 생성하는 코드입니다Web-Form에서 사용자 삭제

var manager = new UserManager(); 
var user = new ApplicationUser() { UserName = UserName.Text }; 
IdentityResult result = manager.Create(user, Password.Text); 
+0

신원 및 회원 자격은 두 가지입니다. 오류가 발생한 부분을 미리 보여줄 수 있습니까? 또는 인증 구성 방법을 조금 더 설명하십시오. –

+0

저는 asp.net을 사용하기 시작했습니다! 위의 코드를 사용하여 사용자를 만들었습니다. 이제는 DB에서 사용자를 제거하는 코드를 원한다. 회원 자격을 사용할 수 없다면 대신 무엇을 할 수 있습니까? –

+0

VS2013에서 제공하는 템플릿 중 하나를 사용하여 응용 프로그램을 만든 경우 만들기 마법사를 시작할 때 오른쪽 상자를 선택하면 ASP.NET ID가 자동으로 구성되어야합니다. 그 후에 사용자를 삭제하기 위해 남은 유일한 작업은 [DeleteAsync] (https://msdn.microsoft.com/en-us/library/dn497527(v=108) .aspx) 메소드를 호출하는 것입니다. UserManager. 회원 자격과 신원은 서로 다릅니다. 새로운 프로젝트의 경우 Identity를 사용해야하며 프로젝트에 Membership과 같은 것을 사용해서는 안됩니다. –

답변

0

사용

userManager.Delete(user) 

는 MembershipProvider가 depricated됩니다; 어디에서나이 클래스에 대한 호출을 사용하십시오 - 제거하십시오 - 그들은 Identity 프레임 워크로 작동하지 않을 것이며 MembershipProvider는 호환되지 않습니다

+0

그것이 핵심입니다! 그러한 기능이 기본적으로 없습니다. –

+0

이 경우 네임 스페이스에 문제가 있습니다. 이것은 Identity 프레임 워크의 일부이며 이전에 사용했습니다. 'userManager.DeleteAsync (user)'를 시도하십시오. 이 메서드의 동기화 버전은 다른 네임 스페이스에서 확장 메서드로 제공되지만 Identity와 함께 제공되는 너겟에 포함됩니다. – trailmax

+0

신원 확인 체계의 버전 2에서 유효하다! 이후 버전을 사용하고 있기 때문에 다른 접근 방식을 사용해야했습니다! 계정을 제거하는 대신 비활성화하기 위해 bool 변수를 사용했습니다! –

관련 문제