2012-03-28 111 views
0

我試圖通過覆蓋的MembershipProvider類的方法來創建自己的「CREATEUSER」。問題是,CREATEUSER是數據類型的的MembershipUser,我在返回一個沒有的MembershipUser興趣,我只是想知道,如果用戶是通過返回一個布爾創建與否。我怎樣才能以最好的方式實現這一目標?定義成員資格提供,覆蓋創建用戶

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

這東西,當我剛開始我沒有足夠的信息來填充的MembershipUser的構造函數註冊用戶,所以我不能返回MemreshipUser對象。 – 2012-03-28 15:39:27

+0

然後只使用您擁有的信息。 IIRC MembershipUser構造函數的參數對於其中的大多數是可選的。 – 2012-03-28 15:40:20