2009-08-21 19 views
7

Tôi đang chạy vào trường hợp ứng dụng ASP.NET sử dụng các cơ sở toàn cầu hóa được tích hợp sẵn đang gặp sự cố.Toàn cầu hóa ASP.NET: Văn hóa = "tự động" trang chỉ thị với sự cố văn hóa trung tính?

Trên một trang ASP.NET với văn hóa = "auto" chỉ thị, một người dùng với một nền văn hóa trung tính như ngôn ngữ trình duyệt của họ (chẳng hạn như "zh-Hans") sẽ tạo ra ngoại lệ sau đây:

Văn hóa 'zh-Hans' là một nền văn hóa trung tính. Không thể sử dụng định dạng này ở định dạng và phân tích cú pháp và do đó, không thể được đặt làm văn bản hiện tại của luồng của chuỗi.

tại System.Globalization.CultureInfo.CheckNeutral (CultureInfo văn hóa) tại System.Threading.Thread.set_CurrentCulture (CultureInfo giá trị) tại System.Web.UI.Page.set_Culture (String giá trị) tại ASP .somePage_aspx .__ BuildControlTree (somePage_aspx __ctrl) tại ASP.somePage_aspx.FrameworkInitialize()

Bất kỳ ý tưởng? Rác cho ăn vào các thông số Văn hóa/Nuôi trồng nhìn chung dường như bị bỏ qua, nhưng trường hợp này gây ra một ngoại lệ không được giải quyết.

Trả lời

3

Trước hết, bạn có thể xem xét đặt UICulture = "tự động" cũng như Culture = "auto" trong <% @ Page%> tuyên bố.

Bây giờ, tôi không thấy bản repro này trên bản cài đặt .NET 4.0 (beta) của tôi, vì vậy đây có thể là lỗi sản phẩm trong .NET 3.5.

Dưới đây là một nguồn lực lớn để tìm hiểu về nền văn hóa trung tính và sự khác biệt giữa UICulture và Văn hóa: http://blogs.msdn.com/ddietric/archive/2008/02/05/yacvcp-yet-another-currentculture-vs-currentuiculture-post.aspx

Hy vọng rằng sẽ rất hữu ích.

2

Bạn không thể đặt văn hóa theo yêu cầu bắt đầu? (Lưu ý: yêu cầu asp.net có thể chuyển đổi giữa các chuỗi sao cho bạn cũng cần phải móc vào chuỗi đang di chuyển.)

+0

hi Andrew Arnott. i đặt culture = "auto" uiculture = "auto" trong số <%@Page %> của tôi. Cũng có ngoại lệ giống như Culture 'zh-Hans' là một nền văn hóa trung tính.Nó không thể được sử dụng trong định dạng và phân tích cú pháp và do đó không thể được đặt làm văn bản hiện tại của luồng. ngoại lệ này trong trang đơn còn lại tất cả các trang hoạt động tốt .------ Hãy giúp tôi –

6

Tôi đã có cùng một vấn đề và sau khi bonking đầu của tôi chống lại một bức tường trong một thời gian tìm thấy câu trả lời ngay dưới mũi của tôi.

Vấn đề tôi đã không hiểu sự khác biệt giữa CurrentCultureCurrentUICulture. Sự khác biệt là CurrentCulture được sử dụng để định dạng ngày, số và thực hiện sắp xếp, CurrentUICulture được sử dụng để tra cứu các chuỗi văn hóa cụ thể từ tài nguyên.

tôi đã có một số mã mà trông giống như

return input.ToString("C", System.Globalization.CultureInfo.CurrentUICulture); 

khi nó nên được

return input.ToString("C", System.Globalization.CultureInfo.CurrentCulture); 

Khi bạn bắt đầu cố gắng để các mục cụ thể văn hóa định dạng với một nền văn hóa không rõ ràng bạn sẽ nhận được hệ thống .Không hỗ trợException.

+0

Đây có thể không phải là vấn đề chính xác nhưng bạn nên tìm một số mã nơi bạn đang cố gán một nền văn hóa trung tính qua CurrentUICulture cho một thứ gì đó mong đợi một nền văn hóa cụ thể hơn mà bạn có thể truy cập thông qua CurrentCulture. – mjallday

Các vấn đề liên quan