Visual Studio 2015项目缺少所有引用

时间:2015-11-13 14:03:40

标签: visual-studio visual-studio-2015

从今天开始,一个属于具有20个项目的解决方案的WPF项目,将我所有的引用都设置为缺失

enter image description here

我刚刚检查了MS建议和Stackoverflow上的其他答案,但都没有成功......我已经尝试从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

由于我无法继续,我已经从同事那里复制了项目,现在它可以工作....认为文件系统出了问题...已经比较了解决方案并且它们是相同的

9 个答案:

答案 0 :(得分:142)

此问题的解决方案是。

每当您将项目导入VS 2015时,它都会修改您的.csproj。所以,为了解决它。右键单击.csproj并在记事本或任何编辑器中打开它并删除以下内容

<body ng-app="myApp" ng-controller="myCtrl">
<div ng-show = "dataFromRest" ng-repeat = "x in dataFromRest.posts" >
<div class="tittle">        
    <div style=" width:25%;">   
       <b ng-click="$index" style="text-decoration: none;">
         <a href="#" ng-click="textshow(showDiv = ! showDiv)" style="text-decoration: none;"># {{x.title}} 
         </a>
         <hr>
         </a>
        </b>
    </div>  
</div>  
<div class="text">              
    <div style="width: 70% ;float:right; background-color: white;">
        <div ng-show="showDiv">{{x.text}} </div>
     </div>
</div>

然后构建您的解决方案,它应该可以工作。

答案 1 :(得分:6)

在解决方案的根目录中,删除/packages/文件夹中的所有内容,然后重新构建。

答案 2 :(得分:3)

我有一次这样做,是由一个破坏的.targets导入引起的。检查您是否意外启用了nuget包还原(包括.targets文件),然后删除.nuget目录。

答案 3 :(得分:2)

我有类似的问题。对我有用的解决方案是为解决方案弹出nuget包管理器并刷新包。

另一个涉及缺少软件包的案例和解决方案的nuget软件包管理器显示了需要安装的更新和依赖项,这就是修复。

另一个案例完全如上所述 - 删除包文件夹修复它。

手动编辑项目是一个选项,但是如果你戳到不应该的地方,你的项目可能无法打开。如果可以,请避免这样做是我的意见。

答案 4 :(得分:2)

它可以帮助强制重建nuget软件包。转到nuget控制台并使用以下命令:(工具>选项>软件包管理器>软件包管理器控制台)

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

safe参数实际上不会更新软件包,而只会重新安装它们。如果那没有帮助,您可以尝试实际更新它们(但请确保在某处有项目的副本,以防万一。)

Update-Package -reinstall -ProjectName "MyProject"

要仅强制更新一个软件包,请使用:

Update-Package -id Microsoft.Package.Name -ProjectName "MyProject"

答案 5 :(得分:1)

我刚刚在VS2015中体验了大约20个项目的解决方案。只有一个项目受到影响,它丢失了所有引用,包括标准的.NET程序集。

我能解决的唯一方法是切换到另一个GIT分支,然后返回,这样就清理了问题,现在一切正常。

答案 6 :(得分:1)

我在VS2015中也经历了大约10个项目的解决方案。只有一个项目 - 主要的MVC项目 - 受到影响,它丢失了所有引用,包括标准的.NET程序集。

问题发生在我的web.config中。我评论了一些行,导致xml文件无效。

答案 7 :(得分:1)

如果您错过了nuget .targets文件夹中的packages文件,则可能会发生此错误。就我而言 packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets

通常情况下,当我将软件包添加到git存储库时(普通.gitignore文件忽略构建文件夹无处不在)并在另一台计算机上签出。

提示:您可以修改.gitignore文件以包含packages文件夹中的所有文件。将这些行附加到底部:

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

答案 8 :(得分:0)

卸载项目,然后编辑项目

查找以下内容并删除。

       此项目引用此计算机上缺少的NuGet包。启用NuGet Package Restore以下载它们。有关更多信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105。丢失的文件是{0}。