我正在尝试使用TSQL将1000个用户导入aspnet_membership表。有人可以指出我是否正确的方向指向正确的方向?
要求是:
谢谢。
答案 0 :(得分:1)
如果您要使用未加密的密码格式,则只需从SQL调用 dbo.aspnet_Membership_CreateUser 存储过程即可创建用户。它需要一堆参数;
@ApplicationName
@UserName
@Password
@PasswordSalt
@Email
@PasswordQuestion
@PasswordAnswer
@IsApproved
@CurrentTimeUtc
@CreateDate
@UniqueEmail
@PasswordFormat
@UserId(输出)
您可以在TSQL中生成密码,并且可以从TSQL发送电子邮件。此存储过程: dbo.aspnet_Profile_SetProperties 将设置配置文件属性。
如果您需要散列或加密密码..那么您可能需要编写一些使用成员资格和配置文件提供程序的管理代码。这样做应该相当容易。提供程序具有生成和加密密码所需的所有方法。 要创建用户,您只需致电:
<强> CREATEUSER 强> (字符串用户名, 字符串密码, 串电子邮件, string passwordQuestion, string passwordAnswer, bool是批准的, object providerUserKey, out MembershipCreateStatus status)
方法并传入数据。加密将在方法内部进行。
因此,如果您不需要加密或散列密码,TSQL可以正常工作。否则它会有一些编码......但实际上很少。
答案 1 :(得分:0)
好吧,AFAIK - 没有自动向导来执行此操作,您需要通过它进行编码。您可以使用SQL语句导入用户和配置文件。但是,GeneratePassword和Emailing是您可能需要考虑的一个单独的过程,以使其更松散地耦合。