2013-04-08 35 views
5

Tôi có một tệp tài nguyên trong thư viện lớp di động của mình hiện đang chứa khoảng 30 chuỗi. Chúng có thể truy cập từ ứng dụng Windows Phone 8 của tôi và các chuỗi đã có trong tệp hoạt động tốt.Thêm tài nguyên chuỗi vào .resx trong PCL gây ra lỗi biên dịch

Tuy nhiên, bây giờ khi tôi cố gắng thêm một chuỗi mới như tôi đã làm trước khi nó gây ra một lỗi biên dịch:

'System.Type' không chứa một định nghĩa cho 'hội' và không có phương pháp mở rộng 'hội 'chấp nhận một đối số đầu tiên của loại' System.Type 'có thể được tìm thấy (bạn đang thiếu một chỉ thị bằng cách sử dụng hoặc một tham chiếu lắp ráp?)

Rõ ràng đây là vấn đề. Khi một chuỗi mới được thêm vào hai thay đổi xảy ra:

  • using System.Reflection; biến mất
  • `toàn cầu :: Hệ thống.Resources.ResourceManager (" ViewModels.Resources.StringResources ", typeof (StringResources) .Assembly); xuất hiện thay cho:

    toàn cầu mới :: System.Resources.ResourceManager ("ViewModels.Resources.StringResources", typeof (StringResources) .GetTypeInfo(). Assembly);

Câu lệnh .GetTypeInfo() và biến mất sử dụng là vấn đề nhưng tôi không thể đặt lại vì tệp được tạo bởi studio trực quan và thay đổi lại. Ý tưởng nào?

Thay đổi đáng kể duy nhất tôi có thể nghĩ đến là bản cập nhật Visual Studio 2012 mới 2?

Cũng đáng chú ý: Nếu tôi thêm một resx khác ở bất kỳ nơi nào khác trong dự án (ứng dụng wp8 hoặc pcl khác) thì điều này sẽ thể hiện chính xác hành vi tương tự khi thêm chuỗi.

+0

tôi repro trên Cập nhật 2, không gần một Cập nhật 1 máy ngay bây giờ. Điều này có thể rất đau đớn. Đăng bài này lên connect.microsoft.com. Cách giải quyết tốt cho đến khi bạn nghe lại là chỉnh sửa tệp .cs bằng tay và tránh trình thiết kế. –

+0

Phải, hãy thực hiện https://connect.microsoft.com/VisualStudio/feedback/details/783211/resx-file-unable-to-be-edited-correctly-causes-compilation-error-in-generated-file#details –

+0

@HansPassant như nó đề cập ở phần cuối của bài đăng kết nối: Tôi đã có nó để biên dịch bây giờ bằng cách xóa và readding resx và thiết kế tập tin. Nhưng đối với một số lý do trong giải pháp thám hiểm các tập tin thiết kế không còn lồng nhau. Resx có thể được cập nhật bằng các chuỗi mới nhưng tệp thiết kế không phản ánh những thay đổi này - vì vậy không lý tưởng. Tôi cũng không thể tìm ra cách lắp lại chúng. Ý tưởng nào? –

Trả lời

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