2012-03-05 47 views
6

Tôi đang sử dụng tài nguyên toàn cầu asp.net để thử và triển khai một trang web hai ngôn ngữ, tôi đã thêm một tài nguyên đơn giản vào tệp tài nguyên toàn cục có tên en-Us.resx có chứa:lỗi tài nguyên toàn cầu asp.net 'Không tìm thấy đối tượng tài nguyên có khóa' '

Password | Text 
Email | Text 

sau đó thực hiện nó vào một textbox trong trang mặc định:

<asp:TextBox runat="server" ID="loginEmail" Text="<%$ Resources:en-US, Email %>" 
          ></asp:TextBox> 

nhưng khi bao giờ tôi chạy trang trên localhost tôi nhận được lỗi này :

The resource object with key '' was not found

Tôi đang sử dụng asp.net 4.0, vấn đề là gì?

Trả lời

13

Định dạng của tập tin tài nguyên là ResourceName.culture.resx

Tạo một tập tin tài nguyên trong thư mục App_GlobalResources gọi Main.resx. Này là dành cho văn hóa mặc định (tức là bất biến)

Sau đó tạo một file resource Main.en-US.resx

Đây là nơi mà tất cả các nguồn lực cho nền văn hóa en-US sẽ sống, và vân vân.

Main.resx 
Main.en.resx 
Main.en-US-resx 
Main.en-AU.resx 
Main.fr.resx 
Main.fr-FR.resx 

, vv

Để truy cập này từ trang web sử dụng cú pháp

<%$ Resources:Main, Email %> 

Đừng lo lắng xung quanh văn hóa, hệ thống sẽ làm việc nó ra. Nó sẽ khớp chính xác đầu tiên (en-US), sau đó làm việc lên đó là văn hóa cha mẹ (en), cha mẹ của cha mẹ (bất biến).

Thay đổi tên của "Main" cho phù hợp với nhu cầu của bạn

+0

hoạt động hoàn hảo, cảm ơn bạn – Wahtever

+0

Nếu tôi có hai khóa khác nhau là Email và Tin nhắn, nhưng ở cuối trang, tôi phải hiển thị Thông báo qua Email để tôi có thể hợp nhất hai khóa hiện có hoặc tôi cần tạo khóa mới làm Thư Email –

+0

Nếu bạn phải hiển thị cả hai, chỉ cần sử dụng 2 <%$ %>, một cho mỗi khóa –

-1
  1. Thay đổi tên tệp thành en-US.aspx.resx và thử lại. Xem this giúp.
  2. Thử thay đổi hành động xây dựng và xem điều gì sẽ xảy ra. Xem here
+0

đã thay đổi tên, vẫn ném cùng một lỗi. tôi nghĩ rằng điều này chỉ dành cho các tài nguyên địa phương. – Wahtever

+0

Kiểm tra điều này. http://stackoverflow.com/questions/5744695/the-resource-object-with-key-key-was-not-found-auto-deployed-asp-net-mvc3-a – Mitul

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