2016-07-02 13 views
10

Tôi đang cố gắng bắt đầu với .NET Core và tôi thực sự có một số khó khăn để hiểu tất cả các lược đồ đặt tên mới này.Tại sao Microsoft.NETCore.App không hỗ trợ netstandard1.6?

Nhìn vào wiki netcoreapp1.0 mục tiêu NET thư viện chuẩn 1.6, tuy nhiên khi tôi cố gắng thêm các netstandard1.6 thay vì netcoreapp1.0 tôi nhận được một gói khôi phục lại thất bại vì Microsoft.NetCore.App không hỗ trợ netstandard1.6.

Có phải vì bị xóa như thế này?

"Microsoft.NETCore.App": { 
    "version": "1.0.0", 
    "type": "platform" 
}, 

Ngoài ra, loại "nền tảng" có nghĩa là gì?

+0

Bạn có chắc chắn bạn đang sử dụng SDK lõi .Net mới nhất đã phát hành (xem trước 2) không? – svick

Trả lời

11

gì bạn sử dụng và tài liệu tham khảo phụ thuộc vào việc bạn đang xây dựng một ứng dụng, hoặc một thư viện chia sẻ:

  • Nếu bạn đang xây dựng một ứng dụng (console, UWP, ứng dụng web ASP.NET Core) , bạn sẽ nhắm mục tiêu netcoreapp1.0 và phụ thuộc vào Microsoft.NetCore.App. type: platform nói với NuGet rằng bạn đang tham khảo một nền tảng, mà không được cài đặt như một gói. netcoreapp1.0 nhập netstandard1.6, có nghĩa là nó có thể sử dụng thư viện cũng nhắm mục tiêu netstandard1.6 hoặc thấp hơn.

  • Nếu bạn đang xây dựng một thư viện (được tiêu thụ bởi một thư viện hoặc ứng dụng), bạn sẽ nhắm mục tiêu netstandard1.X và một trong hai phụ thuộc vào NETStandard.Library hoặc trực tiếp tham khảo các gói NuGet bạn cần.

+0

Tôi đã thấy trên wiki rằng netcoreapp1.0 bao gồm netstandard1.6 và net463 cũng làm điều đó, nhưng khung lưới 4.6.3 chưa được phát hành đúng không? – Paleta

+0

@Paleta Theo [tài liệu này] (https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard.md#mapping-the-net-platform-standard-to- nền tảng), 'net463' sẽ ánh xạ tới' netstandard1.6'. Bạn nói đúng, nó chưa được phát hành. –

+0

@NateBarbettini Bạn có thể làm rõ trong câu trả lời của bạn rằng 'Microsoft.NETCore.App' NuGet yêu cầu tfm' netcoreapp'. NuSTet 'NETStandard.Library' yêu cầu tfm' netstandard'. Vì vậy, một 'netcoreapp' (mà đằng sau hậu trường nhập' netstandard') có thể sử dụng cả NuGets, trong khi thư viện 'netstandard' chỉ có thể tham chiếu đến' NETStandard.Library'. – Thomas

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