1

asp 멤버 자격 기능을 사용하여 웹 응용 프로그램에 사용자 관리를 추가했습니다. 몇 개의 필드를 더 포함하도록 기본 테이블을 수정했습니다. 사용자 만들기 마법사에서 마법사 단계 1을 사용자 지정 가능한 템플릿으로 바꾸고 컨트롤에 2 개의 필드를 추가했습니다.ASP.NET 사용자 만들기 마법사 - 사용자 지정 도움말

사용자 레코드를 저장하는 데 사용되는 저장 프로 시저를 수정하면됩니까? 이 경우 드롭 다운 목록을 어떻게 추가 할 수 있습니까?

USE [DataWarehouseClients] 
GO 
/****** Object: StoredProcedure [dbo].[aspnet_Users_CreateUser] Script Date:  04/09/2010 12:03:01 ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER OFF 
GO 

ALTER PROCEDURE [dbo].[aspnet_Users_CreateUser] 
    @ApplicationId uniqueidentifier, 
    @UserName   nvarchar(256), 
    @IsUserAnonymous bit, 
    @LastActivityDate DATETIME, 
    @UserId   uniqueidentifier OUTPUT 
AS 
BEGIN 
    IF(@UserId IS NULL) 
     SELECT @UserId = NEWID() 
    ELSE 
BEGIN 
    IF(EXISTS(SELECT UserId FROM dbo.aspnet_Users 
       WHERE @UserId = UserId)) 
     RETURN -1 
END 

INSERT dbo.aspnet_Users (ApplicationId, UserId, UserName, LoweredUserName, IsAnonymous, LastActivityDate) 
VALUES (@ApplicationId, @UserId, @UserName, LOWER(@UserName), @IsUserAnonymous, @LastActivityDate) 

RETURN 0 

END

건배 --Billy

답변

0

은 ASP.NET 회원 API를 사용하면 ASP.Net 회원 API 등을 사용하는 경우 내가

+0

감사합니다. 저장된 proc 파일을 찾았지만 어떻게 사용할 수 있는지 잘 모르겠습니다. 프로 시저에 추가 한 컨트롤을 추가 할 수 있습니까? 드롭 다운 상자는 어떻게 작동합니까? 내 게시물에 절차를 추가했습니다. – iamjonesy

+1

나는이 sproc을 직접 호출 한 적이 없지만 항상 API를 사용했습니다. MembershipUser newUser = Membership.CreateUser (UsernameTextbox.Text, PasswordTextbox.Text, EmailTextbox.Text); – edosoft

+0

은 api에 대한 빠른 google을 수행했으며 http://msdn.microsoft.com/en-us/library/t8yy6w3h.aspx에이 기사를 보았습니다. 어쩌면 나는 마법사에 대해 잊어 버리고 직접 해봐야 할 것 같아! – iamjonesy

1

알고 멀리 저장된 프로 시저 aspnet_Users_CreateUser를 사용 @edosoft는 저장된 procs를 수동으로 업데이트 할 필요가 없다고 제안했다.

사용자 프로필에 새/사용자 정의 필드를 추가하려는 경우 프로필과 연결된 web.config 파일에 키를 추가 할 수 있습니다. 그런 다음이 필드의 값은 별도의 루틴에있는 정적 드롭 다운 목록에서 방금 사용 된 db 테이블과 별도로 선택할 수 있습니다.

당신의 web.config 파일에서

:

<profile enabled="true" defaultProvider="providername" automaticSaveEnabled="true"> 
     <providers> 
      <add name="providername" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ConnectionString" applicationName="AppName"/> 
     </providers> 
     <properties> 
      <add name="UserFirst"/> 
      <add name="UserLast"/> 
     </properties> 
    </profile> 

을 그리고 당신은 USER_ID 문자열 식별자 어디처럼 사용할 수 있습니다.

 Membership.CreateUser(User_ID, "password", "[email protected]")   
     Dim objProfile As ProfileCommon = CType(ProfileBase.Create(User_ID, True), ProfileCommon) 
     objProfile.UserFirst = User_First 
     objProfile.UserLast = User_Last 
     objProfile.Save() 

희망이 있습니다.