Asp.net Core RC2 не обнаруживает ссылку на пакет nuget

Я использую чистый шаблон RC2 для веб-приложения.

после добавления ссылки на System.linq это дает мне это:

введите здесь описание изображения

Я использую 461 в качестве фреймворка.


person Ahad Porkar    schedule 24.06.2016    source источник
comment
Вы восстанавливали пакеты после изменения вашего project.json?   -  person svick    schedule 24.06.2016
comment
@svick да, я сделал это. если я удалю подобные проекты, они будут работать хорошо. Думаю, ответ JC1001 правильный. поэтому, когда я устанавливаю 461 , мне не нужно добавлять ссылку внутри package.json , так как он использует настольную платформу dotnet.   -  person Ahad Porkar    schedule 25.06.2016


Ответы (2)


Он автоматически восстанавливает версию пакета, чтобы она соответствовала версии целевой платформы (net461). Так что на самом деле это «обнаружение» пакетов nuget. Вы пытаетесь настроить таргетинг на 461 в образе, поэтому пакеты откатываются с .net core preview1 на .net framework 4.6.1 . Если вы хотите использовать несколько фреймворков (или, как я вижу, вы хотите пакеты RC2, то есть хотите .net core), раздел frameworks вашего файла config.json должен выглядеть, например, так:

"frameworks": {
  "net461": { // old .net framework
      "dependencies":{
        "System.LINQ": "4.0.0.0"
      }
   },
   "netstandard1.5":{ // .net core
       "dependencies":{
        "System.LINQ": "4.1.0-RC2-*"
      }
   }
},

здесь полезная информация о таргетинге платформы

Если вы просто хотите использовать .net core, удалите файл net461.

Я вижу, вам нужно ядро ​​​​ASP.net. здесь приведены некоторые образцы cli ASP MVC. Вот действительно хороший пример проекта ядра ASP.net (используя последнее ядро ​​.net, вам нужно обновить его до Первоначальная версия/предварительная версия2)

person Eric Liu    schedule 30.06.2016

Вы уже должны уметь использовать LINQ в своем коде (используя System.Linq) без добавления ссылки.

Поскольку вы ориентируетесь на .NET 461, вы можете добавить любые дополнительные ссылки GAC в раздел frameworkAssemblies в вашем проекте project.json, например

"frameworks": {
    "net461": {
        "frameworkAssemblies": {
            "System.ServiceProcess": "4.0.0.0",
            "System.Configuration": "4.0.0.0"
        }
    }
},

См. этот вопрос для объяснения между зависимостями и каркасные сборки.

person JC1001    schedule 24.06.2016