1

Как добавить библиотеку Microsoft.TeamFoundation.Client в моем приложении ASP 5? Библиотека поддерживается только dnx 4.5.1, а не dnx 5.0.Как добавить ссылку библиотеки .net 4.5 в .Net Core?

Когда я пытаюсь построить мое приложение, я получаю следующее сообщение об ошибке -

CS0234 The type or namespace name 'TeamFoundation' does not exist in the namespace 'Microsoft' (are you missing an assembly reference? 

Когда я копаться дальше, парит над использованием заявления TeamFoundation, я получаю следующее сообщение:

{} Namespace Microsoft.TeamFoundation 
    MyProject.DNX 4.5.1 - Available 
    MyProject.DNX Core 5.0 - Not Available 
You can use the navigation bar to switch context. 

Как Можно ли переключить контекст с помощью панели навигации?

Как я могу настроить точную чистую версию 4.5.1 с помощью моего приложения ASP 5?

Спасибо! Первый раз спрашивая!

Мой Project.JSON Файл -

{ 
    "version": "1.0.0-*", 
    "compilationOptions": { 
    "emitEntryPoint": true 
    }, 

    "dependencies": { 
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final", 
    "Microsoft.AspNet.Mvc": "6.0.0-rc1-final", 
    "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", 
    "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final", 
    "Microsoft.AspNet.Mvc.ViewFeatures": "6.0.0-rc1-final", 
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final", 
    "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final", 
    "Microsoft.AspNet.Tooling.Razor": "1.0.0-rc1-final", 
    "Microsoft.Extensions.Configuration": "1.0.0-rc1-final", 
    "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc1-final" 
    }, 

    "commands": { 
    "web": "Microsoft.AspNet.Server.Kestrel" 
    }, 

    "frameworks": { 
    "dnx451": { 
     "dependencies": { 
     "Microsoft.TeamFoundationServer.ExtendedClient": "14.89.0", 
     "Microsoft.WindowsAzure.ConfigurationManager": "3.2.1" 
     }, 
     "frameworkAssemblies": { 
     "System.Activities": "4.0.0.0" 
     } 
    }, 
    "dnxcore50": { } 
    }, 

    "exclude": [ 
    "wwwroot", 
    "node_modules" 
    ], 
    "publishExclude": [ 
    "**.user", 
    "**.vspscc" 
    ] 
} 
+0

Не могли бы вы показать нам ваш project.json? –

+0

Просто добавил скриншот. – thephoenix

+0

Зачем скриншот? – Markus

ответ

2

Вы в зависимости от сборки, которая не имеет поддержки dnxcore50. Если вы не заботитесь о поддержке .NET Core и с удовольствием продолжаете использовать среду рабочего стола, вы можете удалить "dnxcore50": { } из своего списка фреймворков в project.json.

+0

Если я это сделаю, мое приложение перестает работать, так как оно использует MVC 6 Как вы можете видеть, существует много «зависимостей», которые, как я полагаю, не работают с 4.5.1? – thephoenix

+0

MVC6 работает как с dnx451, так и с dotnet5.x. Он просто определяет, использует ли он ядро или полная структура. Когда вы используете dnx451, ваше приложение будет использовать полную инфраструктуру .net 4.5 (или mono on linux/mac) – Tseng

+0

@ user2348002 MVC 6 должен работать с поиском таргетинга 'dnx451'. Если он перестает работать, это по другой причине – vcsjones

1

Да, я просто проверил это для вас и Microsoft.TeamFoundationServer.ExtendedClient еще не поддерживает инфраструктуру DNX.

Так как vcsjones указал, что вы можете удалить часть dnxcore50, если вам не нужно быть кросс-платформенным.

Как только вы удалите dnxcore50, переместите Microsoft.WindowsAzure.ConfigurationManager до ваших обычных зависимостей. Сохраните файл project.json, чтобы создать новый файл блокировки.

Если это не сработало, перейдите в свою папку, содержащую файл .sln, и запустите «dnu restore» в командной строке.

Это должно сработать.

+0

Спасибо, теперь работало :) Любите вас. Мне нужно закрыть этот вопрос сейчас? – thephoenix

+0

Добро пожаловать. Ну обычно люди «отмечают» самый полезный ответ. Или дайте своим помощникам преимущество с этими черными стрелками. :) –

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