Я создаю POC, чтобы увидеть, насколько сложно будет создавать наши проекты библиотек С#, используя новый подход к сборке DNX. Я установил VS 2015 и работаю на: dnu --version 1.0.0-beta4-11566. Моим библиотекам С# по-прежнему необходимо поддерживать .net 4.0, однако я хочу воспользоваться преимуществами нового материала build/nuget, который выходит с project.json + nuget 3.0. Поэтому я создал одно библиотечное приложение и попытался использовать его в консольном приложении.
1) ClassLibrary1
2) ConsoleApp1
Проект ClassLibrary1.json
{
"version": "1.0.0-*",
"description": "poc",
"authors": [ "Patrick" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"Newtonsoft.Json": "6.0.8",
"Microsoft.Bcl": "1.1.10"
},
"frameworks": {
"net40": { }
}
}
Проект ConsoleApp1.json
{
"version": "1.0.0-*",
"description": "Another test",
"authors": [ "Patrick" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"ClassLibrary1": "1.0.0"
},
"commands": {
"MyProj": "MyProj"
},
"frameworks": {
"net40": {},
"dnx451": {}
}
}
Я думал, что смогу удалить фреймворк dnx451, однако мое консольное приложение не будет работать без dnx451 (dnx. run). Однако он будет строиться с использованием dnu build!!! Почему? Это ошибка, которую я получаю, когда оставляю dnx451 и пытаюсь запустить его.
System.InvalidOperationException: не удалось разрешить следующие зависимости для целевой платформы «DNX, версия = v4.5.1»: Microsoft.Bcl 1.1.10 Newtonsoft.Json 6.0.8