2016-05-26 3 views
0

С новым ядром dotnet мы больше не можем импортировать наши ссылочные DLL-файлы извне и вместо этого должны пройти фид Nuget. Я пытаюсь получить Oracle.ManagedDataAccess пакет Nuget для работы с моим проектом, но пока не повезло.Невозможно импортировать Oracle Client в ASP.NET Core RC2

Вот ошибка в моем project.json файле:

enter image description here

Говорит The dependency Oracle.ManagedDataAccess >= 12.1.24160419 could not be resolved.

Это ошибка с выхода Package Manager:

Project Oracle.ManagedDataAccess is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Project Oracle.ManagedDataAccess supports: net451 (.NETFramework,Version=v4.5.1) 

Означает ли это, я больше не могу использовать этот пакет? Из того, что я читал до сих пор, ядро ​​dotnet не поддерживает .net framework v4.5.1. Если это действительно так, каковы некоторые альтернативы, которые я могу использовать для подключения к базе данных Oracle?

+0

Можете ли вы поделиться полным файлом 'project.json'? –

+0

Ваш проект должен ориентироваться на net451 или новее, а не netcorapp1.0, потому что Oracle.ManagedDataAccess несовместим с CoreClr – Pawel

+0

@Pawel. Я знаю это. Но приложение нацелено на netcoreapp1.0. Если бы это было net451, у меня не было бы этой проблемы. – painiyff

ответ

1

Я просто посмотрел пакет Oracle.ManagedDataAccess NuGet, и я не думаю, что он может работать на CoreClr. Во-первых, у него есть dll, который нацелен только на net40, поэтому, вероятно, он использует некоторые API, недоступные в CoreClr/CoreFx, или полагается на вещи, находящиеся в ящике/GAC. Во-вторых, он имеет собственные двоичные файлы в подпапках bin \ x64 и bin \ x86. Я думаю, что даже если вы запустили этот пакет в netcoreapp1.0, он может не работать. Если они используют атрибут DllImport для импорта этих DLL, CoreClr не сможет их найти, потому что структура пакета, содержащего собственные ресурсы, немного отличается в новом мире. На мой взгляд, из-за этой зависимости ваше приложение должно просто нацеливаться на полный .NET (например, net451 или newer).

+0

Вижу, спасибо. :( – painiyff

Смежные вопросы