Roslyn无法将透明代理转换为类型' Roslyn.Utilities.SerializableDataStorage'

时间:2014-04-29 10:05:30

标签: c# visual-studio package roslyn

我在尝试使用Microsoft Roslyn加载Visual Studio解决方案或项目时遇到问题。每次我运行以下代码:

Roslyn.Services.Workspace.LoadSolution(solutionFilePath);

我收到以下错误:

  

类型' System.InvalidCastException'的第一次偶然异常。发生在Roslyn.Services.dll中   附加信息:无法投射透明代理以键入' Roslyn.Utilities.SerializableDataStorage'。

项目设置为" AnyCPU"我杀了" Roslyn.Script"在运行我的代码之前的过程 - 我无法弄清楚发生了什么。

当我在控制台应用程序中运行代码时,代码似乎有效,但它是从自定义Visual Studio 13程序包运行的。

更新:事实证明问题是Roslyn需要在x64二进制文件中运行,但Visual Studio软件包在x86上运行。

如果您安装Roslyn CTP而不是使用NUGet,那么可以解决这个问题:

http://social.msdn.microsoft.com/Forums/vstudio/en-US/39c0226e-7063-4701-8f44-4d5419e9e82d/roslynservices-dependency-on-visualstudio-and-weird-roslynutilitiesserializabledatastorage?forum=roslyn

0 个答案:

没有答案