简体   繁体   English

扩展Membership.CreateUser方法的参数

[英]Extending parameters for Membership.CreateUser method

I use this code to call my custom membership-provider method : 我使用此代码调用我的自定义成员资格提供程序方法:

 Membership.CreateUser(newUser.UserName, newUser.Password);

but I need to extend some parameters. 但我需要扩展一些参数。 I have written this to override method : 我写这个覆盖方法:

 public override MembershipUser CreateUser(string username, string password, string email, 
    string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status)
{
    try
    {
        int max = 1;
        int RoleID = 0;
        using (var context = new KowsarSiteEntities())
        {
            max += (from i in context.aspnet_Users
                    select i).Max(itm => itm.UserId);
            RoleID = (from v in context.aspnet_Roles
                      where v.RoleName.ToLower().Equals(RoleName)
                      select v.RoleId).FirstOrDefault();
            KowsarSiteModel.aspnet_Membership member =                    
                KowsarSiteModel.aspnet_Membership.Createaspnet_Membership
                    (ApplicationID, max, GetHashedPassword(password), 1);
            KowsarSiteModel.aspnet_Users ASPNETusers = 
                KowsarSiteModel.aspnet_Users.Createaspnet_Users(ApplicationID, max, username);
            KowsarSiteModel.aspnet_UsersInRoles userInRoles =
                KowsarSiteModel.aspnet_UsersInRoles.Createaspnet_UsersInRoles(max, RoleID);
            context.AddToaspnet_Membership(member);
            context.AddToaspnet_Users(ASPNETusers);
            context.AddToaspnet_UsersInRoles(userInRoles);
            context.SaveChanges();
        }
        status = MembershipCreateStatus.Success;
    }
    catch (Exception ex)
    {
        string str = ex.Message;
        status = MembershipCreateStatus.UserRejected;
    }
    return null;
}

I need to add some parameters to CreateUser method but How it is possible Membership is a static class how I can customize it? 我需要向CreateUser方法添加一些参数但是如何成为可能会员是一个静态类我如何自定义它?

((YourProviderType)Membership.Provider).CreateUser(yourParameters);

You cannot use the static class provided by System.Web.Security if you're not going to conform to their interface. 如果您不符合他们的界面,则不能使用System.Web.Security提供的静态类。

As abatishchev has pointed out, however, you don't have to use the static class; 然而,正如abatishchev指出的那样,你不必使用静态类; you can always use your own class instead. 你可以随时使用自己的班级。

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

相关问题 CreateUserWizard的哪种方法称为Membership.CreateUser? - What method of CreateUserWizard calls the Membership.CreateUser? Membership.CreateUser适用于多个会员提供商 - Membership.CreateUser for multiple Membership Providers 对Membership.CreateUser抛出“没有错误。” - “No Error.” thrown on Membership.CreateUser 使用Membership.CreateUser时数据在哪里保留? - Where is data persisted when using Membership.CreateUser? ASP.Net在调用Membership.CreateUser()时设置正确的连接字符串 - ASP.Net Setting the correct Connection String when calling Membership.CreateUser() ASP.NET MVC 3 单元测试 Membership.CreateUser 总是返回 MembershipCreateStatus 错误 - ASP.NET MVC 3 unit tests for Membership.CreateUser always return MembershipCreateStatus error 通过Membership.CreateUser创建用户时,是否有一个.NET包装器可以设置用户的地址,城市,州,邮政编码等? - When creating a user by Membership.CreateUser, is there a .NET wrapper that can set the user's address, city, state, zip, etc.? 成员资格CreateUser和相关表 - Membership CreateUser and related tables C#成员资格多个提供程序createuser错误 - C# membership multiple providers createuser error 成员资格存储过程 aspnet_Membership_CreateUser 不起作用 - Membership stored procedure aspnet_Membership_CreateUser not working
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM