2011-11-14 24 views
11

Vì vậy, tôi đang làm việc trên một dự án được xây dựng trong phiên bản visual studio 2005 theo khuôn khổ 2.0. Bây giờ tôi chuyển dự án lên phiên bản mới của Visual Studio 2010 SP1 theo phiên bản và bắt đầu nhận ra họ đang ném lỗi này và cảnh báo với các phụ thuộc, ví dụTại sao System.Data.OracleClient không có trong .NET 4.0 Client Profile?

Warning 1 could not be resolved because it has a dependency on "System.Data.OracleClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which is not in the currently targeted framework ".NETFramework,Version=v4.0,Profile=Client". 

Mang cho tôi những hậu quả mà các ứng dụng doesn 't đọc tài liệu tham khảo mà tôi đã thêm, nhưng thay đổi khuôn khổ. .Net framework 4.0 sự cố đã được giải quyết. Thử nghiệm tôi thay đổi chúng thành .net framework 4.0 client profile và tôi nhận ra lỗi xây dựng và cảnh báo xuất hiện lại.

Bây giờ câu hỏi của tôi là lý do tại sao đặt .net 4.0 hoạt động chứ không phải với client profile ?? Tôi cần một lời giải thích tốt bởi vì tôi không phải là một chuyên gia trong phần này.

+0

Duplicate http://stackoverflow.com/questions/2759228/difference-between-net4-client-profile-and-full-framework-download – ChrisBint

Trả lời

11

Hồ sơ khách hàng chỉ bao gồm một tập con của toàn bộ khuôn khổ .NET, một tập hợp con đủ để tạo các ứng dụng dành cho máy tính để bàn, đồng thời giúp dễ dàng phân phối lại .NET hơn với ứng dụng của bạn.

Như đã đề cập trong a blog post introducing the Client Profile, tính năng Máy khách Oracle không được bao gồm trong Hồ sơ khách hàng. Điều này có thể là do Oracle Client is deprecated as of .NET 4 (cùng một bản phát hành giới thiệu Hồ sơ khách hàng) và bạn nên loại bỏ hoàn toàn việc sử dụng nó. (Tuy nhiên, cũng không được cho là phù hợp để đưa vào Hồ sơ Khách hàng.)

Nếu bạn cần kết nối với Oracle từ ứng dụng của mình, bạn nên nhắm mục tiêu toàn bộ khuôn khổ .NET hoặc sử dụng thư viện trình điều khiển bên thứ ba - có lẽ là một được phát triển bởi Oracle, chứ không phải bởi Microsoft - sẽ luôn cập nhật. (InfoQ article about the deprecation liệt kê một số lựa chọn thay thế.)

9

Đi tới trang thuộc tính dự án và thay đổi khung mục tiêu thành .NET Framework 4 sau đó nó sẽ hoạt động! Hồ sơ khách hàng là dành cho ứng dụng "nhỏ" và không cài đặt tất cả các hội đồng.

+2

Điều này phù hợp với tôi :) Cảm ơn bạn! – user219628

2

Cấu hình .NET Client là một tập hợp con của toàn bộ cài đặt .NET chỉ chứa các "khách hàng" của khung. Chức năng máy chủ, như ASP.NET, không có mặt. Mục đích của việc này là giảm kích thước và các yêu cầu của .NET Framework.

Hoặc từ MSDN:

.NET Framework 4 Client Profile là một tập hợp con của .NET Framework 4 được tối ưu hóa cho các ứng dụng của khách hàng. Nó cung cấp chức năng cho hầu hết các ứng dụng khách, bao gồm Windows Presentation Foundation (WPF), Windows Forms, Windows Communication Foundation (WCF), và các tính năng ClickOnce. Điều này cho phép triển khai nhanh hơn và gói cài đặt nhỏ hơn cho các ứng dụng nhắm mục tiêu Hồ sơ khách hàng .NET Framework 4.

Bây giờ, lý do bạn không thể sử dụng Hồ sơ khách hàng là do Nhà cung cấp .NET Oracle yêu cầu các hội đồng vượt quá những gì Hồ sơ khách hàng cung cấp, do đó ứng dụng của bạn không thể sử dụng hồ sơ khách hàng.

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