2

我正在使用SqlMembershipProvider來執行我的ASP.NET網站的用戶管理。特別是,該網站需要多語言(全球化!)。全球化的會員資格異常沒有發生......該怎麼辦?

當我使用Membership.CreateUser這是很好的,我得到的東西像重複的電子郵件例外創建用戶,重複的用戶名等,但我要的是有它本地化爲當前線程的文化來重新使用異常文本。

我很積極我正在設置當前的線程UI文化等,因爲所有其他全球化功能都是完全正常的。

我的印象是所有的.NET框架異常文本全球化。他們不是嗎?

特別是,我正在測試法語。我想我已經成功安裝了法語.NET 3.5 SP1語言包(但並不確定 - 有沒有辦法檢查!?),請遵循here的說明。

這可能是隻是System.Web.Security.Membership異常未本地化的情況嗎?或者我錯過了一個環境配置步驟?

任何幫助將是偉大的。

安德魯。

回答

1

異常消息未本地化。

必須使用錯誤代碼本地化他們你的自我:

Public Shared Function ErrorCodeToString(_ 
        ByVal createStatus As MembershipCreateStatus) As String 
    Select Case createStatus 
     Case MembershipCreateStatus.DuplicateUserName 
      Return Resources.Resource.Account_DuplicateUserName 

     Case MembershipCreateStatus.DuplicateEmail 
      Return Resources.Resource.Account_DuplicateEmail 

     ... 

的狀態代碼的完整列表,請參閱this MSDN link

相關問題