2014-11-13 18 views
6

Tôi có đoạn mã sau:Giá trị của DateTimeFormatInfo :: AbbreviatedDayNames có bao giờ thay đổi trên các phiên bản .Net cho Tây Ban Nha không?

var thursday = new CultureInfo("es-ES").DateTimeFormat.AbbreviatedDayNames[4]; 

trả về "ju.", Như mong đợi.

Tôi vừa thừa hưởng một số mã khá cũ, trong đó có mã kiểm tra rằng hy vọng giá trị là "Jue" ...

tôi đã tự hỏi - đã bao giờ thay đổi này trong khuôn khổ Net?

EDIT 1 - Mở rộng:

Tôi đang sử dụng Net 4.5 ... Tôi có một máy thời gian gần đây được xây dựng với Visual Studio 2013 và không có gì khác thường được cài đặt.

 var format = new CultureInfo("es-ES").DateTimeFormat; 

     Console.WriteLine("AbbreviatedDayNames:"); 

     foreach (var name in format.AbbreviatedDayNames) 
     { 
      Console.WriteLine(name); 
     } 

     Console.WriteLine("ShortestDayNames:"); 

     foreach (var name in format.ShortestDayNames) 
     { 
      Console.WriteLine(name); 
     } 

Đầu ra:

AbbreviatedDayNames: 
do. 
lu. 
ma. 
mi. 
ju. 
vi. 
sá. 
ShortestDayNames: 
D 
L 
M 
X 
J 
V 
S 

Chỉnh sửa 2 - máy của tôi là Anh tiếng anh, mặc dù tôi không hiểu tại sao mà sẽ có vấn đề nếu tôi xác định văn hóa là "es-ES"?

Sửa 3 - thật là thú vị:

https://dotnetfiddle.net/ - trả ju.

http://www.compileonline.com/compile_csharp_online.php - lợi nhuận Jue

+1

Nó trả về 'jue' cho tôi. Phiên bản .NET Framework của bạn là gì? Tôi sử dụng .NET Framework 4.5. Bạn có chắc chắn không trộn nó với 'ShortestDayNames'? Bởi vì nó có 'ju'. –

+1

Trả về 'jue' cho tôi trong .NET Framework 2, 3, 3.5 và 4.5. –

+1

Trả về 'jue' cho trong 2.0, 3.0, 3.5, 4. –

Trả lời

1

Đối tượng CalendarData làm cho một C# C++ chuyển khi lấy các dữ liệu lịch, trên đường tới thu thập thông tin lịch từ hệ điều hành.

Sự khác biệt về phiên bản hệ điều hành và cài đặt cho các giá trị trong mảng sẽ là nguyên nhân của việc này, chứ không phải thay đổi NetNet thực tế.

Bạn có thể tham chiếu mã khung C# tại http://www.dotnetframework.org/default.aspx/[email protected]/[email protected]/DEVDIV_TFS/Dev10/Releases/RTMRel/ndp/clr/src/BCL/System/Globalization/[email protected]/1305376/[email protected] và lưu ý phương pháp được bao gồm từ gốc được quản lý.

+0

Có khả năng là âm thanh. Bạn có biết sự khác biệt của hệ điều hành có thể là gì không? - Tôi đang chạy Windows 8.1 mới nhất bằng cách này ... –

+1

Dường như compileonline.com đang chạy trên một hương vị Linux bằng cách sử dụng Mono; dotnetfiddle.net có vẻ là một cá thể Azure. Một thử nghiệm nhanh với một số máy ảo khác nhau có thể mang tính thông tin. –

+0

Rõ ràng các máy chạy Windows 7. Net 4.5 cũng trả về 'jue' quá ... –

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