2010-06-11 3 views
0

ASP.NET 마법사를 사용하여 로그인을 만들 때 aspnet_regsql.exe 도구를 사용하여 자동으로 생성 된 테이블 집합을 사용합니다 ...수동으로 데이터베이스 ASP.NET에 사용자 추가?

마법사를 사용하여 사용자를 만들면 매우 긴 사용자 ID가 생성됩니다 "a40cf936-1596-4560-a26c-450792e2c8c0"이 데이터베이스에 연결하는 다른 프로그램을 사용하여 사용자를 추가하고 싶지만 Visual Studio가이 ID를 어떻게 자동 생성합니까? 자동으로 생성하고 싶습니다.

아이디어가 있으십니까? 미리 감사드립니다. -Scott

+0

왜 MembershipProvider 인터페이스를 사용하는 대신 DB에 직접 작성하고 있습니까? –

+0

이 웹 사이트는 내가 작성하고있는 C# Windows 응용 프로그램의 확장입니다. 사용자는 프로그램과 상호 작용하고 필요에 따라 새 사용자를 추가하는 등 웹 사이트가 업데이트됩니다. – Scott

+0

ASP.NET MVC 멤버십 스타터 키트를 체크 아웃 할 수 있습니다. 즉, ASP.NET MembershipProvider를 통해 구성된 사용자를 수정할 수있는 간단한 사이트입니다 –

답변

1

Frank가 말한 것처럼 MembershipProvider 인터페이스를 사용해야합니다.

질문에 직접 대답하기 위해서는 그 숫자가 단순히 GUID 일 가능성이 99 %입니다. 하나를 얻으려면 다음과 같이 간단합니다 :

string idText = System.Guid.NewGuid().ToString(); 

편집 : 그냥 분명히하기 위해, 나는 이것을 권장하지 않습니다. 적절한 API 호출을 사용하지 않으면 제대로 구현되지 않은 다른 테이블간에 다른 종속성, 권한 및 역할이있을 수 있습니다. 당신은해야합니다 look here instead.

+0

실제로는 GUID 일 가능성이 100 %입니다. 이것이 ASP.NET 인증 공급자가 사용자 키에 사용하는 것입니다. – GalacticCowboy

+0

또한 편집에 +1을하십시오. * 수행중인 작업을 알지 못하면 수동으로하지 마십시오! – GalacticCowboy

+0

빠른 응답을 보내 주셔서 감사합니다. 이것은 asp.net, 내가 볼 수있는 유일한 옵션 밖에 수동으로, 아주 고마워요 데이터베이스를 변경하는 것입니다 매우 도움이됩니다 : – Scott

0

다운로드. 닷넷 반사경과 AspNetMemembershipProvider에 대한 소스보세요. 필요한 SQL 호출을 모두 찾을 수 있습니다. 또한 ASP.NET 외부에서 클래스를 인스턴스화 할 수 있다고 생각합니다. AspNetMembershipProvider.Initialize() 메서드가 있습니다.이 메서드는 구성 파일에 있던 내용에 따라 초기화 할 수 있습니다. Initialize()에 대한 매개 변수는 분명하지 않지만 반사경에서 분해하면 해결할 수 있습니다.

+0

고마워 .. 내가 – Scott

관련 문제