2009-06-16 163 views
1

如果我使用Silverlight Business Application,如何更改登錄用戶(以及用戶配置文件中的任何字段)的用戶密碼?如何更改用戶密碼?

+0

請提供關於這個問題的更多細節。你使用什麼機制來存儲和管理密碼?它是會員提供商嗎? – 2009-06-16 22:16:12

回答

1

所以,我創建域名服務只有一個方法:

[EnableClientAccess()] 
public class DomainChangePassword : DomainService 
{ 
[ServiceOperation] 
public bool UserChangePassword(string userName, string oldPassword, string newPassword) 
{ 
    if (Membership.ValidateUser(userName, oldPassword)) 
    { 
    MembershipUser memUser = Membership.GetUser(userName); 
    return memUser.ChangePassword(oldPassword, newPassword); 
    } 
    return false; 
} 
} 
2

Silverlight中沒有內置的機制來更改密碼。 您需要爲此實現您自己的服務。

例如:

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] 
public class SecurityService : ISecurityService 
{ 
    public bool ChangePassword(string oldPassword, string newPassword) 
    { 
     if(!HttpContext.Current.User.Identity.IsAuthenticated) 
      return false; 

     return Membership.Provider.ChangePassword(HttpContext.Current.User.Identity.Name, oldPassword, newPassword); 
    } 
    ... 
} 

如果這個回答你的問題,請 「標記爲答案」。