web-dev-qa-db-ja.com

Visual Studio 2015プロジェクトにすべての参照がありません

今日から、20のプロジェクトを持つソリューションに属するWPFプロジェクトは、すべての参照を欠落に設定します

enter image description here

StackoverflowのMSの提案と他の回答を確認しましたが、何も機能しませんでした... SVNからソリューションを再取得しようとしましたが、運が悪かったので、他の同僚はこの問題を抱えていませんでした。また、参照(System.Xmlなど)を削除して再追加しようとしました。しかし、それを機能させる方法はありません...

なにか提案を?ありがとう

更新#1

これがcsprojです

 <ItemGroup>
<Reference Include="Catel.Core, Version=4.2.0.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\Catel.Core.4.2.0\lib\net40\Catel.Core.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Catel.Extensions.Controls, Version=4.2.0.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\Catel.Extensions.Controls.4.2.0\lib\net40\Catel.Extensions.Controls.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Catel.Extensions.FluentValidation, Version=4.2.0.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\Catel.Extensions.FluentValidation.4.2.0\lib\net40\Catel.Extensions.FluentValidation.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Catel.Fody.Attributes, Version=2.8.0.0, Culture=neutral, PublicKeyToken=1c8163524cbe02e6, processorArchitecture=MSIL">
  <HintPath>..\packages\Catel.Fody.2.8.0\lib\portable-net4+sl4+wp7+win8+wpa81+MonoAndroid14+MonoTouch40\Catel.Fody.Attributes.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Catel.MVVM, Version=4.2.0.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\Catel.MVVM.4.2.0\lib\net40\Catel.MVVM.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="MethodTimer, Version=1.15.7.0, Culture=neutral, PublicKeyToken=cb1364609f40a1dc, processorArchitecture=MSIL">
  <HintPath>..\packages\MethodTimer.Fody.1.15.7.0\Lib\portable-net4+sl5+wp8+win8+wpa81+MonoAndroid16+MonoTouch40\MethodTimer.dll</HintPath>
  <Private>False</Private>
</Reference>
<Reference Include="Microsoft.Threading.Tasks, Version=1.0.12.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Microsoft.Threading.Tasks.Extensions, Version=1.0.12.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Microsoft.Threading.Tasks.Extensions.Desktop, Version=1.0.168.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="ServiceStack">
  <HintPath>..\packages\ServiceStack.4.0.46\lib\net40\ServiceStack.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="ServiceStack.Client, Version=4.0.46.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\ServiceStack.Client.4.0.46\lib\net40\ServiceStack.Client.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="ServiceStack.Common">
  <HintPath>..\packages\ServiceStack.Common.4.0.46\lib\net40\ServiceStack.Common.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="ServiceStack.Interfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=e06fbc6124f57c43, processorArchitecture=MSIL">
  <HintPath>..\packages\ServiceStack.Interfaces.4.0.46\lib\portable-wp80+sl5+net40+win8+monotouch+monoandroid+xamarin.ios10\ServiceStack.Interfaces.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="ServiceStack.Text, Version=4.0.46.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\ServiceStack.Text.4.0.46\lib\net40\ServiceStack.Text.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.IO, Version=2.6.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.Bcl.1.1.10\lib\net40\System.IO.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="System.Management" />
<Reference Include="System.Net" />
<Reference Include="System.Runtime, Version=2.6.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.Bcl.1.1.10\lib\net40\System.Runtime.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="System.Threading.Tasks, Version=2.6.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.Bcl.1.1.10\lib\net40\System.Threading.Tasks.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="System.Windows.Interactivity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <HintPath>..\packages\Catel.MVVM.4.2.0\lib\net40\System.Windows.Interactivity.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="System.Xaml" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="Telerik.Windows.Controls, Version=2015.2.728.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <HintPath>..\packages\Telerik.Windows.Controls.for.Wpf.40.Xaml.2015.2.728\lib\net40\Telerik.Windows.Controls.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Telerik.Windows.Controls.GridView, Version=2015.2.728.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <HintPath>..\packages\Telerik.Windows.Controls.GridView.for.Wpf.40.Xaml.2015.2.728\lib\net40\Telerik.Windows.Controls.GridView.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Telerik.Windows.Controls.Input, Version=2015.2.728.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <HintPath>..\packages\Telerik.Windows.Controls.Input.for.Wpf.40.Xaml.2015.2.728\lib\net40\Telerik.Windows.Controls.Input.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Telerik.Windows.Controls.Navigation, Version=2015.2.728.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <HintPath>..\packages\Telerik.Windows.Controls.Navigation.for.Wpf.40.Xaml.2015.2.728\lib\net40\Telerik.Windows.Controls.Navigation.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="Telerik.Windows.Data, Version=2015.2.728.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
  <HintPath>..\packages\Telerik.Windows.Data.for.Wpf.40.Xaml.2015.2.728\lib\net40\Telerik.Windows.Data.dll</HintPath>
  <Private>True</Private>
</Reference>
<Reference Include="UIAutomationProvider" />
<Reference Include="UIAutomationTypes" />
<Reference Include="WindowsBase" />

はい、Nugetを使用します。他の19ポイントは同じアセンブリを指します...何も移動されていません

更新#2

先に進むことができなかったので、同僚からプロジェクトをコピーしましたが、現在は機能しています....ファイルシステムで何かがうまくいかなかったと思います...ソリューションを比較したところ、同じでした

54
advapi

この問題の解決策は次のとおりです。

プロジェクトをVS 2015にインポートするたびに、.csprojが変更されます。だから、それを修正するために。 .csprojを右クリックしてメモ帳または任意のエディターで開き、以下を削除します

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
  <PropertyGroup>
    <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.Microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
  </PropertyGroup>
  <Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
</Target>

次に、ソリューションをビルドすると、動作するはずです。

146
George Saad

ソリューションのルートディレクトリで、/packages/フォルダー内のすべてを削除してから、再ビルドを実行します。

7
Don Cheadle

Nugetパッケージを強制的に再構築するのに役立ちます。 Nugetコンソールに移動し、次のコマンドを使用します(TOOLS> Options> Package Manager> Package Manager Conbsole)

Update-Package -reinstall -ProjectName "MyProject" -safe

Safeパラメーターは実際にはパッケージを更新せず、それらを再インストールするだけです。それでも解決しない場合は、実際に更新してみてください(ただし、万が一に備えて、プロジェクトのコピーがあることを確認してください)。

Update-Package -reinstall -ProjectName "MyProject"

1つのパッケージのみを強制的に更新するには、次を使用します。

Update-Package -id Microsoft.Package.Name -ProjectName "MyProject"
3
Damian Vogel

壊れた.targetsインポートが原因で、これは一度ありました。誤ってnugetパッケージの復元(.targetsファイルを含む)を有効にしてから、.nugetディレクトリを削除したかどうかを確認してください。

3

同様の問題がありました。私のために働いた解決策は、ソリューションのnugetパッケージマネージャをポップし、パッケージを更新することでした。

別のケースでは、不足しているパッケージが含まれ、ソリューションのNugetパッケージマネージャーは更新プログラムと依存関係を示していました。これらはインストールする必要があり、これが修正でした。

別のケースは上記のとおりでした-パッケージフォルダーを削除すると修正されました。

プロジェクトを手動で編集することはオプションですが、想定されていない場所を突くと、プロジェクトが開かない可能性があります。可能であれば、それを避けることは私の意見です。

2
Drive4Fun

また、VS2015では、約10のプロジェクトを含むソリューションでこれを正確に経験しました。 1つのプロジェクト(メインMVCプロジェクト)のみが影響を受け、標準の.NETアセンブリを含むすべての参照が失われました。

問題は私のweb.configにありました。いくつかの行をコメントしていたため、xmlファイルが無効になりました。

1
toralux

私はちょうどVS2015で約20のプロジェクトを含むソリューションでまさにこれを経験しました。 1つのプロジェクトのみが影響を受け、標準の.NETアセンブリを含むすべての参照が失われました。

私が解決できた唯一の方法は、別のGITブランチに切り替えてから戻ることでした。これにより、問題がクリーンアップされ、すべて正常に動作するようになりました。

1
CSL

このエラーは、nuget packagesフォルダ内の.targetsファイルを見逃した場合に発生する可能性があります。私の場合、それはpackages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targetsでした

通常、gitリポジトリにパッケージを追加するときに発生し(一般的な.gitignoreファイルはどこでもビルドフォルダーを無視します)、別のコンピューターでチェックアウトします。

ヒント:.gitignoreファイルを変更して、packagesフォルダー内のすべてのファイルを含めることができます。これらの行を最後に追加します。

# Include all files in NuGet packages directory
!/packages/**/
1
opewix

プロジェクトをアンロードしてから、プロジェクトを編集します

以下を探して削除してください。

このプロジェクトは、このコンピューターにないNuGetパッケージを参照します。 NuGet Package Restoreを有効にしてダウンロードします。詳細については、 http://go.Microsoft.com/fwlink/?LinkID=322105 を参照してください。欠落しているファイルは{0}です。

0