2010-08-20 33 views
6

Tôi đã viết một ứng dụng MVC VERY đơn giản chỉ hiển thị một chuỗi đơn từ một tệp Tài nguyên. Nó hoạt động tốt trên máy cục bộ của tôi nhưng khi tôi triển khai dự án tới máy chủ web, tôi nhận được lỗi.Làm cách nào để xuất bản/triển khai Dự án MVC bằng Tài nguyên ResX?

CS0103: Tên 'Resources' không tồn tại trong bối cảnh hiện nay

Bạn có thể dễ dàng sao chép chính xác những gì tôi đang làm chỉ trong 10 bước!

  1. Tạo ứng dụng web MVC 2 mới.
    (File-> New-> Project-> ASP.NET MVC 2 Web Application, nói không với dự án Đơn vị kiểm tra)

  2. Thêm "App_GlobalResources" thư mục.
    (nhấp chuột phải vào dự án và chọn Thêm-> Thêm ASP.NET thư mục-> App_GlobalResources)

  3. Thêm tệp nguồn vào thư mục này.
    (nhấp chuột phải vào thư mục và chọn Thêm-> Mục mới ...-> Tập tin tài nguyên. Đặt tên cho nó là Strings.resx)

  4. Thêm một chuỗi vào bảng Tài nguyên.
    (Tên = "HelloWorld", Giá trị = "Tôi đã bản địa hóa Hello World!")

  5. Đặt thuộc tính tệp cho tệp tài nguyên.
    (Nhấp vào tập tin Strings.resx và int cửa sổ Properties thiết Build Action = "Resource Embedded" và CustomTool = "PublicResXFileCodeGenerator")

  6. Thêm một điều khiển mới
    (Nhấp chuột phải vào thư mục và chọn điều khiển Add-> Bộ điều khiển ... Đặt tên cho nó HelloWorldController.cs)

  7. Thêm một View
    (với con trỏ vào phương pháp Index của HelloWorldController.cs Nhấn tổ hợp phím CTRL-MV. Sử dụng các giá trị mặc định bao gồm Xem tên = "Chỉ mục")

  8. Sửa đổi Chế độ xem để hiển thị chuỗi của chúng tôi từ tệp tài nguyên.
    Thay thế nội dung của placeholder MainContent với

    <h2><%: Resources.Strings.HelloWorld %></h2> 
    
  9. Run nó tại địa phương để kiểm tra rằng nó hoạt động. Nên làm gì.

  10. Publish nó đến một máy chủ web và truy cập vào url "http://localhost/HelloWorld"

Đây là nơi tôi thấy lỗi được mô tả ở đầu trang.

Tôi sẽ tưởng tượng rằng cài đặt tôi đã đặt trên tệp ResX không chính xác và tài nguyên không được xuất bản lên máy chủ.

Trợ giúp được đánh giá cao.

Cảm ơn!

Trả lời

14

Ah ha! Tìm ra. Trong phần LỚN cho bài viết này:
http://odetocode.com/Blogs/scott/archive/2009/07/16/resource-files-and-asp-net-mvc-projects.aspx

Âm thanh như thư mục App_GlobalResources KHÔNG hợp tác với MVC. Vì vậy, tôi chuyển file resx tôi vào một thư mục mới
~/Resources/Strings /Strings.resx

này cùng với 1 thay đổi nhỏ để thiết lập các tập tin tài sản
Tuỳ chỉnh cụ Namespace = Tài

và giải quyết vấn đề!

+0

Cảm ơn rất nhiều! Điều này đã làm tôi thất vọng và câu trả lời đã được trình bày cho tôi khi tôi đang cố đăng câu hỏi ở đây. –

+0

Dễ dàng, súc tích và hoạt động, cảm ơn rất nhiều! :-) – eka808

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