2012-12-05 33 views
5

Tôi không hoàn toàn chắc chắn làm thế nào để tốt hơn từ câu hỏi này, vì tôi không hoàn toàn chắc chắn nguyên nhân chính là những vấn đề tham khảo khác nhau, vì vậy tôi xin lỗi trước cho tiêu đề mơ hồ.Tham chiếu hệ thống không được nhận dạng?

Tôi đang viết ứng dụng trong VS 2012 Express cho Windows 8, nhắm mục tiêu một máy tính bảng bề mặt WinRT (ARM).

Tôi đang gặp nhiều sự cố với các tham chiếu dường như được nhận diện toàn bộ. Để đơn giản, hãy để tôi chiếu sáng với một số ví dụ.

Tôi đang viết một số mã liên quan đến SOAP xml.

Trước tiên, nếu tôi tham chiếu "System.Xml" (cũng như System.Xml.Linq) bằng cách rõ ràng bao gồm dòng "using ..", nó dường như không thực sự làm bất cứ điều gì.

using System.Xml.Linq; 
using System.Xml; 
... 
XmlDocument xmldoc = new XmlDocument(); 

ném "Loại hoặc namespace tên 'XmlDocument' không thể tìm được"

Tương tự như vậy nếu tôi rõ ràng hơn:

using System.Xml.Linq; 
using System.Xml; 
.... 
System.Xml.XmlDocument xmldoc = new System.Xml.XmlDocument(); 

ném "Loại hoặc namespace tên 'XmlDocument' không tồn tại trong không gian tên 'System.Xml' "cũng như thông báo lỗi ban đầu.

Ok. Tôi rõ ràng là thiếu một cái gì đó, nhưng có tấn kết quả google cho những thứ như thế này.

Tôi đang chạy VS2012 trên Windows 8 được cài đặt trên VirtualBox, và có lẽ cài đặt của tôi đã được hosed, đầu tiên tôi đã thử cài đặt lại VS2012, sau đó sửa chữa cài đặt khi điều này dường như không ảnh hưởng đến bất cứ điều gì.

Tiếp theo, tôi đã thử thêm tham chiếu theo cách thủ công vào các tệp .dll được đề cập. Khi tôi cố gắng này, VS sẽ không cho phép nó, nói rằng họ đã được bao gồm theo mặc định.

Tiếp theo, tôi đã thử mở tệp .csproj theo cách thủ công cho dự án của tôi và thêm tham chiếu Bao gồm = "... dòng cho một số tham chiếu mà tôi dường như bị thiếu (như tôi đã nói, tôi chỉ sử dụng Hệ thống. Xml là một ví dụ.) Điều này dường như không thay đổi bất cứ điều gì, vì tôi đã nhận được chính xác các lỗi tương tự.

Tiếp theo, tôi đã đi vào "Thêm hoặc xóa chương trình" trên linh cảm lấy cảm hứng từ google và thông qua Bảng điều khiển -> Thêm/Gỡ bỏ Chương trình, tôi đã bật .Net Framework 4.5 Dịch vụ Nâng cao. Điều này không may dường như không có tác dụng.

Thêm các đường dẫn chứa .dll khác nhau vào "Đường dẫn Tham chiếu" cũng dường như không ảnh hưởng gì ở tất cả (trường đó là trống khi lần đầu cài đặt VS.)

Tôi bị bối rối. Tôi thiếu tệp .dll hoặc các tệp khác, ngay cả sau khi cài đặt lại và sửa chữa lặp lại?

Lưu ý rằng tôi có thể tạo ít nhất một tệp XmlDocument bằng cách tham chiếu Windows.Data.Xml, Windows.Data.Xml.Dom nhưng không gian tên đó dường như thiếu một số phương pháp tôi cần.

+0

Oh, thông tin bổ sung, nếu nó giúp: Đây là aC# Windows Store ứng dụng trong Visual Studio 2012 Express cho Windows 8, chạy trên VirtualBox, và nếu tôi nhận xét ra các dòng với các vấn đề tham khảo, nó xây dựng cho một máy tính bảng bề mặt thông qua gỡ lỗi từ xa tốt. –

+1

Nếu bạn không cần quyền truy cập ngẫu nhiên trong tài liệu XML, hãy kéo phân tích cú pháp qua ['XmlReader'] (http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx) phải hợp lý thuận tiện khi bạn tìm ra API. Nó sẽ vẫn cho phép bạn cấu trúc mã của bạn song song với cấu trúc XML. – millimoose

+0

@millimoose, cảm ơn bạn. Vâng, tôi sẽ tiếp tục với điều đó. –

Trả lời

4

System.Xml.XmlDocument không khả dụng cho các ứng dụng Windows Store. Hãy xem MSDN page - các lớp học, phương pháp và đặc tính được đánh dấu bằng túi mua sắm màu xanh lá cây là những người duy nhất bạn có thể sử dụng với các ứng dụng Windows Store.

Đối với tham chiếu không gian tên hệ thống và Windows, tất cả những thứ bạn có thể sử dụng đã là một phần của ứng dụng .NET dành cho Windows Store Tham chiếu trong dự án của bạn, vì vậy không có gì có thể được thêm vào.

enter image description here

+0

Con trai tôi cảm thấy ngu ngốc. Cảm ơn nhiều! –

+0

Trong trường hợp bất kỳ ai mắc lỗi giống như tôi đã thực hiện ban đầu: XmlDocument được nhận dạng như một phần của không gian tên của Windows.Data.Xml, nhưng điều này không có các phương pháp cần thiết để thực hiện những gì tôi đã thảo luận ở trên. –

1

Có thể bạn cần thêm tham chiếu vào dll trong dự án của mình.

xem liên kết sau để biết chi tiết http://msdn.microsoft.com/en-us/library/wkze6zky.aspx

(Các System.XML và System.Xml.Linq phải ở trong.Tab net)

+1

Cảm ơn bạn đã trả lời. Vâng, tôi đã thử làm điều đó; VS không cho phép bất cứ điều gì tôi cố gắng thêm bằng tay, nói rằng "Một tham chiếu đến _________ không thể được thêm vào. Một tham chiếu đến thành phần ______ đã tồn tại trong dự án." Tôi nhận thấy rằng có một số "System.Xml.dll" tập tin, ví dụ, trong các thư mục con khác nhau của Microsoft.Net và Silverlight, và tôi nhận được điều này cho mỗi và mỗi một trong số họ. –

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