2010-03-19 29 views
22

Tôi có một ứng dụng bảng điều khiển có mục tiêu .NET 2.0Visual Studio 2010: Không thể thay đổi mục tiêu. Cung cấp Lỗi TargetFrameworkMoniker

Nó rất ngắn nhưng đầy mã không an toàn.

Tôi đã chuyển đổi nó thành VS 2010. Tôi chạy OK.

Khi tôi cố gắng thay đổi "khuôn khổ mục tiêu" trong thuộc tính đến 3,5 hoặc 4,0 nó cho thấy hộp thông báo:

TargetFrameworkMoniker: Lỗi Phân tích tệp cấu hình ứng dụng tại dòng 0. tài liệu XML phải có một yếu tố cấp cao nhất.

đích sau đó vẫn là 2.0.

+0

Đối với tôi, đây cũng là vấn đề tương tự khi chuyển từ .NET sang NET 4.5. Giải pháp là một phần của TFS và hóa ra tôi đang ở chế độ ngoại tuyến. Khi tôi kết nối trở lại trực tuyến với máy chủ TFS của tôi tất cả đều hoạt động tốt. – gideon

Trả lời

15

Tìm giải pháp. Đơn giản chỉ cần mở app.config trong văn bản pad (nó trống rỗng vì lý do nào đó) và dán:

<?xml version="1.0"?> 
<configuration> 
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration> 
28

Điều này xảy ra với tôi vì tệp dự án của tôi được đánh dấu là "Chỉ đọc" trong thuộc tính của nó. Thay đổi nó, và nó đã được sử dụng tốt.

Nó cũng có thể được gây ra bởi read-only App.config/web.config

1

Đối với tôi vấn đề là file web.config nằm ngoài thư mục của dự án. Tôi đã chuyển nó trở lại và có thể thay đổi khung mục tiêu.

1

Tôi có cùng một vấn đề. Tôi giải quyết nó bằng cách loại bỏ thuộc tính ghi bảo vệ của tập tin web.config. Nó chỉ được đọc trước đó.

0

Tôi đã cố gắng để nhắm lại mục tiêu từ NET 4.5.2 để NET 4.5 Trong app.config của tôi, tôi đã phải thay đổi

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> 

để

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 

trước khi trang thuộc tính dự án sẽ hãy để tôi nhắm mục tiêu lại.

0

Đối với tôi, dự án của tôi đã sử dụng tệp web.config là tệp được liên kết quay lại web.config trong một dự án khác. Tôi đã xóa liên kết, đã thay đổi mục tiêu rồi thêm lại liên kết.

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