Я создал частный пакет nuget с targetframework Netstandard 2.0. Этот пакет зависит от EntityFrameworkCore и EntityFramework.DbContextScope.
Это прекрасно работает, если я использую его в проекте .Net Core, но не впроект .net Framework 4.6.1.
Пакет EntityFramework.DbContextScope вызывает проблемы.Я взглянул на исходный код в nuget и увидел это в проекте. Json
"frameworks": {
"netstandard1.3": {
"imports": [
],
"dependencies": {
"NETStandard.Library": "1.6.0",
"Microsoft.EntityFrameworkCore.Relational": "1.0.0"
},
"buildOptions": {
"define": [
"EFCore"
]
}
},
"net46": {
"dependencies": {
"EntityFramework": "6.1.3"
},
"buildOptions": {
"define": [
"EF6"
]
},
"frameworkAssemblies": {
"System.Data": "4.0.0.0"
}
},
Если я установлю свой пакет nuget в проект .net Framework 4.6.1, он также автоматически установит EntityFramework 6, но я создал свой пакет Nuget с EntityFrameworkCore.
Могу ли я внести изменения в мой пакет Nuget, чтобы он всегда устанавливал EntityFramework.DbContextScope с сетевым стандартом targetframework вместо net46?
EDIT: толькоСпособ, которым я мог сделать эту работу до сих пор, заключается в ручном редактировании hintpath в файле csproj проекта .net framework 4.6.1.Это работает, но далеко от идеала.
<Reference Include="EntityFramework.DbContextScope, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\EntityFramework.DbContextScope.1.0.0\lib\netstandard1.3\EntityFramework.DbContextScope.dll</HintPath>
</Reference>