【问题标题】:VS2012 Project Xaml reports cannot find namespace error, but project compiles fineVS2012 Project Xaml 报告找不到命名空间错误,但项目编译正常
【发布时间】:2013-09-12 18:41:45
【问题描述】:

我在 VS2012 中的解决方案遇到了一个非常奇怪的问题。

问题是,它是另一个人制作的解决方案,我必须在我的 c# 课程中使用它。我知道它运行良好,因为我的团队中还有 3 个人没有收到任何警告或类似情况。

从我的角度来看,程序运行得很好,但是当我构建并搜索 xaml 文件时,错误只会不断堆积,关于命名空间中丢失的项目和其他类似的东西:

错误 1 ​​无法加载文件或程序集“Microsoft.Practices.ServiceLocation,Version=1.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。该系统找不到指定的文件。 C:\Users\jesperplantener\Documents\Visual Studio 2012\Projects\02350Demo.VS2012 (1)\02350Demo.VS2012\02350Demo\View\App.xaml 9 9 02350Demo

错误 2 名称“EventTrigger”在命名空间“clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity”中不存在。 C:\Users\jesperplantener\Documents\Visual Studio 2012\Projects\02350Demo.VS2012 (1)\02350Demo.VS2012\02350Demo\View\NodeUserControl.xaml 68 17 02350Demo

等等,我得到了大约 29 个错误。

现在进入有趣的部分:

我在 macbook air 2013 上运行。Windows 虚拟安装在 Parallels 中。起初我以为这是缺陷,所以我重新安装了 Windows 7。但这并没有解决问题。然后我将我的并行安装从 8 升级到 9。没有解决问题。我现在刚安装完windows 8,parallels 9,问题依旧!!!

拜托,在我做傻事之前有人可以帮助我! :D

顺便说一句,是的,这个项目已经下载了好几次了,它可以在我队友的电脑上运行。

【问题讨论】:

  • 可能你的队友安装了一些你没有安装的库。检查并比较你队友的 BIN 文件夹和你的 寻找他们有但你没有的丢失的 DLL
  • 我本可以指定的。我们所有人都有完全相同的项目文件。他们中的大多数人都刚刚安装了visual studio,所以他们和我一样进行了干净的安装。
  • TFS + VS 在将 REFERENCES 保存在不同的计算机上并不是那么好。你有任何带有 YELLOS ADMIRATION MARK 的参考吗?如果是这种情况,请删除并阅读参考文献
  • 目前所有的错误都是这样的: Error1: The name "Interaction" does not exist in the namespace "clr-namespace:System.Windows.Interactivity;assem... 只是关于不同名称和不同的命名空间。
  • 在安全模式下运行VS是否还会出现错误? (命令行上的 /SafeMode)。

标签: c# visual-studio-2012 namespaces


【解决方案1】:

如果我记得的话,Windows 交互性可以有一个可选的混合程序集。 Visual Studio 2012 版本的 Blend 1 只能在 Win 8 中工作,不会做 WPF 应用程序。您可能没有 WPF 版本。

可以通过运行 Blend 来确定是否安装了 blend 的应用程序版本。如果是并且它可以正常工作,blend 会正常运行,如果不是,它会告诉您并提供下载 Blend 试用版 WPF 版本的链接。这可能在更新中有所改变...

所以在你做任何事情之前,先将update 3 安装到visual studio,然后尝试混合。验证它是否运行,然后如果您确实安装了更新,请尝试重建。

----- 更新----

对于 Microsoft.Practices.Services 定位器,从 codeplex (Common Service Locator library) 安装

----从 OP (Jesper) 更新 ---

验证所有包都匹配相同版本的 .Net。使用 Nuget 安装/卸载软件包,直到全部对齐。

【讨论】:

  • @JesperPlantener 让我们先尝试修复一件事然后...查看更新。
  • 嗨 OmegaMan。刚刚尝试更新到更新3。我以为我昨天有,但意识到我现在没有。这只导致每次我构建程序时 xaml 编辑器都会崩溃。我现在正在修复VS,看看是否能解决我的问题,将返回答案
  • 没关系,修复并没有解决问题。有时设计师的作品,有时不是。我刚刚尝试添加下载的 Microsoft.Practices.Services 定位器,但这也不起作用,同样的问题。在 Blend 中一切似乎工作正常,我可以在那里打开项目,它显示不同的视图就好了。
  • 刚刚搜索了设计器问题,这与名为 xdesproc.exe 的东西有关。似乎这是更新 3 中的另一个问题,因此问题可能不相关
  • 我解决了!卸载 mvvm light NuGet 包,然后重新安装它,这给了我一个为 .net 4.5 而不是 4 制作的版本。更新了 xaml 中的所有引用,并为 System.Windows.Interactivity 下载了一个新的 .dll 以支持 4.5(旧一个是 4.0)。这似乎已经消除了所有错误!感谢您抽空 OmegaMan!
【解决方案2】:

尝试从以下位置下载程序集 http://scsf2012.codeplex.com/Download/AttachmentDownload.ashx?ProjectName=scsf2012&WorkItemId=1&FileAttachmentId=630895(链接可以在http://scsf2012.codeplex.com/workitem/1找到)。

PS:刚刚将错误消息复制到谷歌。

【讨论】:

【解决方案3】:

我在 Blend 中遇到了类似的问题。 VS 2012 设计器很好,但在 Blend 中收到与您相同的错误,阻止我使用 Blend 的设计器。

为了解决这个问题,我删除了有问题的引用,然后重新添加;但我没有使用“添加项目引用...”,而是使用“添加引用”并从文件对话框中手动选择了 DLL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-07
    • 2011-07-21
    • 2019-08-29
    • 1970-01-01
    • 2018-09-07
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    相关资源
    最近更新 更多