Visual Studio 2015专业版出现以下错误:无法加载文件或程序集'Microsoft.Activities.Design.Services'。

11
我在开发机上有以下内容:
  1. Windows server r2 2012。
  2. SharePoint server 2016。
  3. 我下载/安装了Visual studio 2015 Professional。
  4. 我下载了Microsoft Office Developer Tools Preview 2 for Visual Studio 2015。
  5. 我在VS 2015 community中创建了一个新的空白的sharepoint 2016项目。
  6. 在项目中,我添加了一个新的事件接收器。
  7. 我成功构建了该项目。
但是当我点击开始调试时,出现了以下奇怪的异常:

严重代码说明项目文件行抑制状态错误 无法加载所请求的一个或多个类型。请获取LoaderExceptions属性以获取更多信息。SharePointProject6

这是我的SP 2016解决方案的样子:

enter image description here

我的项目出现以下警告:

严重程度 代码 描述 项目 文件 行 抑制状态 警告 在调用类型为“Microsoft.VisualStudio.SharePoint.WorkflowDesignerSupport.PackageBootstrapper,Microsoft.VisualStudio.SharePoint.WorkflowDesignerSupport,Version=14.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”的方法“projectService_ProjectInitialized”时发生未处理的异常。 异常:System.IO.FileNotFoundException。消息:找不到文件或程序集“Microsoft.Activities.Design.Services,Version=1.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其某个依赖项。系统找不到指定的文件。 SharePointProject6 0

请问有人可以提供建议吗?谢谢。

编辑

这是参考链接:

enter image description here :-

编辑-2 当我从以下位置检查我的当前引用时 "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5",我得到了以下结果:-

enter image description here

编辑-3

现在我转到了另一台安装了Visual Studio 2015的机器上(实际上是我的开发笔记本电脑),并将Microsoft.Activities.Design.Services.dllC:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Activities.Design.Services\v4.0_1.0.0.0__31bf3856ad364e35复制,然后将其粘贴到安装有SharePoint和Visual Studio的服务器中:

enter image description here

然后我打开Visual Studio项目,浏览Microsoft.Activities.Design.Services.dll,并将其添加到我的Visual Studio项目中,如下所示:

enter image description here

但是我仍然面临同样的错误。现在我尝试以管理员身份运行Visual Studio。此外,我清除了我的项目的bin文件夹。此外,我修复了Visual Studio并修复了Visual Studio的开发工具... 但是当我运行项目时,我会收到相同的错误...
编辑-4 现在我已经修复了Visual Studio 2015,并收到了以下消息:-

enter image description here

所以我不确定这些信息是否与我遇到的问题有关?

1
你能否发送“引用”截图(菜单>添加引用)? - Samuel Tulach
1
当您右键单击“引用”>“添加引用”时,是否看到已选中“Microsoft.Activities.Design.Services”? - Samuel Tulach
@SamuelTulach现在当我右键单击引用>添加引用时,没有任何名为“Microsoft.Activities.Design.Services”的引用,无论是在扩展还是框架下..我能看到的唯一相关引用是在框架下命名为“Microsoft.Activities.build”,并且未选中..那么这是什么意思? - John John
@SamuelTulach,你能就我上面的评论提供建议吗?谢谢。 - John John
1
你在哪个账户上运行VS? 这个账户是系统管理员吗?你正在以管理员身份运行吗? 尝试使用系统账户运行并以管理员身份运行VS,然后再试一下。 - Guruparan Giritharan
显示剩余6条评论
2个回答

9
  1. Microsoft.VisualStudio.SharePoint.WorkflowDesignerSupportMicrosoft.Activities.Design.Services.dll由Visual Studio (devenv.exe)本身加载,而不是由您编写的组件加载,因此VS不会在您的项目目录中查找它们。

  2. 您可以通过将Microsoft.Activities.Design.Services.dll复制到与Microsoft.VisualStudio.SharePoint.WorkflowDesignerSupport相同的目录中来解决问题:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SharePoint\Extensions\WFDesignerSupport\

  3. 最好的方法当然是安装缺少的Workflow Manager组件,其中包含此DLL。可以从Microsoft下载,如下所述:https://msdn.microsoft.com/en-us/library/jj193448(v=azure.10).aspx

编辑

根据https://msdn.microsoft.com/en-us/library/yx7xezcf(v=vs.110).aspx,可执行文件可以在其配置文件中指定程序集的查找位置,VS也是这样做的。devenv.exe.config包含以下内容:

<probing privatePath="PublicAssemblies;PrivateAssemblies;...

因此,它应该在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies 中查找 DLL 文件。


1
重新安装VS不应该比修复更多。我宁愿修复(或卸载/重新安装)工作流管理器。 - Philippe
1
这里与 C++ Redistributables 相关的消息并不重要(可能是 Windows 更新了更近期的版本)。 - Philippe
1
通常文件丢失的原因是当您卸载某些正在使用的组件时(Windows会记录它们在下次重启时删除),然后重新安装而没有先重新启动。安装程序会注意到文件已经存在,但是当您最终重新启动时,它们会被删除。 - Philippe
1
通过反编译工具Reflector查看Microsoft.Activities.Design.Services.dll,发现它没有其他依赖项,因此未找到该程序集。 - Philippe
1
使用VS Pro DVD/ISO上的MSI(请参见其他答案)或将其复制到C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ PrivateAssemblies文件夹中。 - Philippe
显示剩余15条评论

3

Microsoft.Activities.Design.Services.dll现在随着Workflow Manager Tools 1.0 for Visual Studio一起提供,其安装程序在Visual Studio Professional安装DVD/ISO上,在\packages\sptoolsDependencies\enu文件夹中。 但它在Community Edition中不存在。

WorkflowManagerTools_x64.msi上进行安装/修复将在GAC和References文件夹中都安装所需的文件。

更新

在我的机器上,WorkflowManagerTools_x64.msi也可以在C:\ProgramData\Package Cache\{4830FC51-95F2-48CB-A7D9-8FCF262F4204}v2.0.50408.2\packages\sptoolsDependencies\enu下找到。


您可以从微软官方网站 https://www.microsoft.com/en-US/download/details.aspx?id=48147 下载 vs2015.pro_enu.iso 文件。然后,您将需要像 VirtualCloneDrive 这样的程序在虚拟 DVD 驱动器中打开它。您还可以从 vs_professional.exe 在线安装程序创建一个离线安装目录(请参阅下载页面上的安装说明)。 - Philippe
1
你需要修复的是 Workflow Manager Tools 1.0 for Visual Studio,而不是 Workflow Manager 或者 Workflow Manager Client。 这些是三个独立的安装程序。 - Philippe
VS由许多小的安装文件组成(DVD上有342个)。其中大部分是另一个文件的依赖项,并且不会出现在控制面板中。Workflow Manager Tools 1.0 for Visual Studio 在VS 2012、VS 2013和VS 2015之间共享。右键单击 WorkflowManagerTools_x64.msi 并在 C:\Program Files\Reference Assemblies\Microsoft\Workflow Manager\1.0 文件夹中恢复我删除的文件。 - Philippe
1
卸载/重新安装Visual Studio 2015Microsoft Office Developer Tools for Visual Studio 2015,似乎对Workflow Manager Tools 1.0 for Visual Studio没有任何影响。 - Philippe
1
我已经提供了三种不同的方法来获取.msi文件。选择你喜欢的那个... - Philippe
显示剩余11条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接