2009-07-15 74 views
60

Lý do thuyết phục nào tồn tại khi sử dụng chúng?Lợi ích của tệp tài nguyên (.resx) là gì?

+6

Nếu bạn chưa từng sử dụng một file resx trước đây, nhưng có bảng của riêng chuỗi và (chuỗi hoặc tệ hơn, rải rác khắp các mã, tất cả các địa phương được xác định) như và nơi ẩn náu 't thấy một lý do để thay đổi cách tiếp cận đó, thì đây là một câu hỏi hợp pháp. – mmr

+5

Tôi chưa bao giờ sử dụng resx trước đây. Đó là lý do đằng sau câu hỏi. – Newbie

Trả lời

66
  • Tệp tài nguyên giúp bạn dễ dàng bản địa hóa/quốc tế hóa ứng dụng .net bằng cách tự động xác định tệp resx ngôn ngữ nào để sử dụng dựa trên ngôn ngữ của người dùng. Để thêm nhiều ngôn ngữ, chỉ cần thêm một tệp tài nguyên đã dịch khác.

  • Tệp tài nguyên cung cấp cho bạn vị trí trung tâm để lưu trữ chuỗi, tệp và tập lệnh của bạn và tham chiếu chúng theo cách mạnh mẽ (do đó biên dịch sẽ bị hỏng nếu bạn tham chiếu chúng không đúng cách).

  • Tệp tài nguyên có thể được biên dịch thành các cụm vệ tinh, giúp dễ dàng thay đổi tài nguyên trong ứng dụng sản xuất mà không phải biên dịch lại toàn bộ.

12

Với resx bạn có thể có một ngôn ngữ lập trình (ngôn ngữ nói không phải là ngôn ngữ lập trình) cho phép chương trình/hệ thống của bạn đa ngôn ngữ.

+10

Có - thế giới là * KHÔNG * chỉ nói tiếng Anh! –

+13

@marc_s: Cái gì? Đó chỉ là trò chuyện ngớ ngẩn. – Randolpho

+0

bất kỳ hướng dẫn nào về cách thực hiện điều đó bằng một ví dụ đơn giản? – KansaiRobot

21

Là một bổ sung cho các câu trả lời khác mà tôi đã bình chọn, tôi muốn thêm tài nguyên chuỗi đó cho văn bản có thể đọc được, chứ không phải hằng số sẽ được sử dụng theo chương trình. Chúng tuyệt vời cho các thông báo lỗi, nhãn nút và các loại tương tự.

Rất thường xuyên, thay vì chuỗi cuối cùng, chúng tôi lưu trữ một chuỗi định dạng để các biến có thể được thay thế tại thời điểm cuối cùng. Điều tốt đẹp về phương pháp này là, không giống như nối, nó không bị hỏng khi một ngôn ngữ có các yêu cầu thứ tự từ khác nhau.

+2

+1 để sử dụng các chuỗi định dạng –

+1

+1 cho điều đó thực sự! Mặc dù vẫn còn Rồng; ví dụ. nơi tiếng Anh có "một" và "nhiều", tiếng Slovenia, ví dụ: có "một", "ít" và "nhiều". – Cornelius

+0

Đó là một chuyển hướng gây phiền toái cho một tệp "res" riêng biệt từng có thời gian ai đó tham chiếu đến một chuỗi được định dạng để ghi nhật ký. – Jmoney38

11

Tệp tài nguyên cho phép bạn thay đổi văn bản/đồ họa mà chương trình của bạn sẽ hiển thị mà không cần chỉnh sửa mã của chương trình. Vì nhiều lý do, nó thường được coi là lý tưởng để tránh cần phải chỉnh sửa mã nguồn của chương trình của bạn để thực hiện các thay đổi không phải là một phần của logic của ứng dụng của bạn.

1

Ngoài các câu trả lời ở trên, tệp tài nguyên cũng có thể cung cấp cho bạn một nơi để lưu trữ tệp thử nghiệm để thực hiện các bài kiểm tra Đọc/Ghi. Bằng cách đó, bất kể môi trường của người khác được thiết lập như thế nào, bạn có thể có một nơi để lưu trữ nhật ký hoặc các tệp khác.

Hãy nhớ rằng những tệp bạn thực hiện trong tài nguyên phải được tuần tự hóa. Kiểm tra dưới đây để biết thêm:

https://msdn.microsoft.com/en-us/library/f45fce5x(v=vs.80).aspx

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