繁体   English   中英

在Membership.CreateUser方法中生成ApplicationID时?

[英]When ApplicationID is generated in Membership.CreateUser method?

我正在使用ASP.Net成员身份,想知道何时确切生成ApplicationID。 我想知道当我们使用“ Membership.CreateUser”方法时将调用什么事件以及何时生成ApplicationID。

我用谷歌搜索了一段时间,但是找不到满意的答案。

谁能解释这种方法的作用?

谢谢

我想知道当我们使用“ Membership.CreateUser”方法时将调用什么事件以及何时生成ApplicationID。

在处理对Membership表的任何请求(例如select / insert / update / delete)之前,将通过applicationName检索Application

例如,在Membership.CreateUser方法内部,在创建新用户之前立即调用QueryHelper.GetApplication

Application application = QueryHelper.GetApplication(membershipEntity, 
   applicationName);

// QueryHelper.GetApplication
internal static Application GetApplication(MembershipEntities ctx, 
   string applicationName)
{
    ObjectParameter[] objectParameter = new ObjectParameter[1];
    objectParameter[0] = new ObjectParameter("name", 
       applicationName.ToLowerInvariant());
Application application = ctx.CreateQuery<Application>(
"select value a FROM Applications as a WHERE ToLower(a.ApplicationName) = @name",
objectParameter).FirstOrDefault<Application>();
    return application;
}

如果application为null,则将这样创建一个应用程序-

internal static Application CreateApplication(MembershipEntities ctx, 
   string appName)
{
   Application application = new Application();
   application.ApplicationId = Guid.NewGuid();
   application.ApplicationName = appName;
   ctx.Applications.AddObject(application);
   Application application1 = application;
   return application1;
}

关于代码来自ASP.NET通用提供程序 传统成员资格提供程序使用存储过程,但是逻辑几乎相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM