【问题标题】:Visual Studio 2013 can't find present DLLsVisual Studio 2013 找不到当前的 DLL
【发布时间】:2015-09-21 09:15:59
【问题描述】:

场景

我撤消了所有待处理的更改,并从 TFS 获取最新版本。我尝试构建我的解决方案,但出现与两个程序集有关的错误,它们是:

  • System.Web.Helpers
  • System.Web.WebPages

我团队的另一个成员和我做的一样,对她来说一切都很好,并且发现程序集的问题为零。

我们的web.config 是相同的,因为我们都检查了 TFS。

我做了什么

我问她两个麻烦的 DLL 在她机器上的路径,并检查了我机器上的相同路径,它们存在。我在同一个文件夹中有这些 DLL,而且它们的版本与她的相同!

C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies\

我还比较了我们的projname.csproj.user 文件,以检查在我阅读this topic 后她的文件是否有任何不同。但这也和我的一样!

然后我继续删除 dll,然后从上面的路径中手动添加它们,现在我的所有错误都消失了,但随后我被告知我的 web.config 已更改并需要签入,我知道发生了什么变化:

<Reference Include="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <HintPath>C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies\System.Web.Helpers.dll</HintPath>
  <Private>False</Private>
</Reference>

上面曾经是在线的,没有HintPath的东西。

我不希望将其签入,而且每次我想将我的代码签入 TFS 时都必须删除这些东西真的很累。

问题

System.Web.WebpagesSystem.Web.Helpers 没有加载到我的机器上,而是在我的其他团队成员的机器上。

【问题讨论】:

  • 如果您的机器上存在 sll .. 您是否尝试添加对它的引用?
  • 是的,忘记添加那个位了。查看更新后的问题。
  • 你和你同事用的VS版本一样吗?
  • 是的,完全相同的版本。

标签: asp.net .net visual-studio-2013 assemblies


【解决方案1】:

可能的原因是 dll 已在您同事的机器上注册。所以它没有任何提示路径。根据 MSDN “在 GAC 中注册的程序集将没有这些引用的 HintPath 条目”。确保此引用的程序集已在您尝试构建项目的所有计算机上的 GAC 上注册。

注册您的 dll,然后重试。

【讨论】:

  • 好的,刚刚让我的同事检查了她的 GAC 文件夹,那里没有这些程序集。
  • 最后让我印象深刻的是..你应该比较你和你同事的 .sln 和 .csproj /.vbproj 文件。
猜你喜欢
  • 2014-01-24
  • 2014-11-28
  • 2015-08-12
  • 2020-10-03
  • 1970-01-01
  • 2014-07-10
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
相关资源
最近更新 更多