2012-06-29 2 views
3
The type 'System.Net.Http.HttpMessageHandler' is defined in an 
assembly that is not referenced. You must add a reference to assembly 'System.Net.Http, 
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. 

\Global.cs 

Пакет, который пытался добраться до работы является AspNetWebApi из NuGet от Nightly Строит из aspnetwebstackReference Error TFS & NuGet

Got некоторые проблемы с TFS Reference, когда я делаю NuGet установки-пакет текущий проект и все DLL-файлы являются локальными местами с момента своего проекта веб-сайта, я получаю это странное сообщение, если я перестрою все решение, оно будет работать гладко, но когда я изменю малейшую вещь в файле CS, который должен скомпилировать повторы ошибок сам.

и можете ли вы сделать nuget просто установить ссылки с помощью пакета dir и package.config?

Wonder, если у кого-то есть решение этой проблемы?

Или если у вас есть хорошие статьи о ссылках nuget & tfs практики, которые вы могли бы порекомендовать.

ответ

1

Короткий ответ, нет, вы не можете удалить файлы dir и config пакетов, если вы хотите, чтобы nuget работал правильно. Nuget добавляет пользовательские цели в ваш файл проекта, которые читают папку pack.config и пакет и копируют в папку bin. Кроме того, dll ссылается на то, что nuget добавляет в ваш проект использование подсказки, указывающей на папку пакетов. Если вы удалите папку пакетов, ссылка не будет разрешена.

Например:

<Reference Include="Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\Microsoft.SqlServer.2008R2.Smo.1.0.0\lib\net40\Microsoft.SqlServer.Management.Sdk.Sfc.dll</HintPath> 
</Reference> 
0

я получил точно такое же сообщение в одном из моих проектов.

В Visual Studio 2012 я включил System.Net.Http из «Assemblies> Extensions». В предложении «Таргетинг» в верхней части диалогового окна указано «.NET Framework 4.5.1». Была проверена «System.Net.Http» версии 2.0.0.0. Но я получил сообщение об ошибке.

Оказалось, что Visual Studio не копировал эту сборку в локальную папку. Скорее всего, он захватывает одну из некоторых других версий моей машины.

Вот как вы можете изменить «Копировать локальную»: с помощью ссылки «System.Net.Http», выделенной в обозревателе решений, нажмите клавишу «F4», чтобы перейти в окно свойств. Если для параметра «Копировать локальное» установлено значение «False», нажмите «False» и измените его на «True».

Это исправило проблему для меня.