2014-03-05 38 views
0

使用NuGet运行程序包更新后,我无法再运行我的应用程序。它建立得很好,但在运行时我收到:运行时的ServiceStack Redis NuGet相关版本错误

Could not load file or assembly 'ServiceStack.Interfaces, Version=4.0.2.0, Culture=neutral, PublicKeyToken=e06fbc6124f57c43' or one of its dependencies. The system cannot find the file specified.

这似乎从版本号是不正确的结果,但我能找到没有办法解决它,因为这个数字不以任何用户出现可编辑的文件。事实上,我的.csproj正在寻找Version=4.0.0.0。改变这一点没有什么有用的效果

第一次安装ServiceStack.Redis时,我不得不手动修复我的.csproj文件中的引用以使用正确的版本,但是这一次似乎修复将无法工作。

我不确定如果我不明白如何使用NuGet,或者这些软件包是否坏掉了,但是如何获得工作安装?

编辑 - packages.config:

<?xml version="1.0" encoding="utf-8"?> 
    <packages> 
     <package id="ServiceStack.Common" version="4.0.11" targetFramework="net40" /> 
     <package id="ServiceStack.Interfaces" version="4.0.11" targetFramework="net40" /> 
     <package id="ServiceStack.Redis" version="4.0.11" targetFramework="net40" /> 
     <package id="ServiceStack.Text" version="4.0.11" targetFramework="net40" /> 
    </packages> 
+1

从您的项目中删除所有'ServiceStack。*'NuGet包,然后再次添加它们。它看起来像一个版本不匹配,你不应该手动改变任何文件。然后做一个干净的和重建所有。 – Scott

+0

这实际上是我尝试的第一件事,没有任何效果。 – Burstaholic

+0

你可以发布你的'packages.config'吗? – Scott

回答

0

你有不洁的DLL和需要做干净的卸载所有ServiceStack包。即

  • 从项目
  • 删除ServiceStack的dll的所有引用删除的NuGet /packages文件夹和packages.config
  • 从你的App/Web.config中
  • 删除所有集绑定重定向删除您的/bin/obj文件夹

然后从这个干净的板岩开始,再次从NuGet安装软件包。

+0

这解决了它,专门检查绑定重定向。 – Burstaholic