2012-03-28 3 views
0

Я пытаюсь создать свой собственный «CreateUser», переопределив метод класса MemberShipProvider. Проблема в том, что CreateUser имеет тип данных MemberhipUser, и я не заинтересован в возврате MemberhipUser, я только хочу знать, был ли пользователь создан или нет, возвращая bool. Как я могу достичь этого наилучшим образом?Пользовательский MemberShip Provider, переопределить Создать пользователя

public override MembershipUser CreateUser(string name, string email) 
    { 
     User u = new User 
     { 
      Email = email, 
      Name = name 
     }; 
     gdb.Users.InsertOnSubmit(u); 
     try 
     { 
      gdb.SubmitChanges(); 
      MailSender.NewMember("hej hopp"); 
     } 
     catch 
     { 
      return false; 
     } 
    } 

ответ

0

Когда вы пишете пользовательский поставщик членства, вы должны соблюдать сигнатуры методов, определенных в базовом классе. Поэтому вы должны вернуть экземпляр MembershipUser. Если в вашем приложении вы ничего не делаете с возвращаемым значением метода CreateUser, вы можете вернуть null или экземпляр MembershipUser, где вы заполняете только те поля, которые вы хотите использовать в конструкторе.

+0

Это то, что когда я регистрирую пользователя поначалу, у меня недостаточно информации для заполнения конструктора MemberhipUser, поэтому я не могу вернуть объект MemreshipUser. –

+0

Затем используйте только имеющуюся у вас информацию. IIRC аргументы конструктора MembershipUser для большинства из них являются необязательными. –

Смежные вопросы