我有以下代码段。在UWP中使用Roslyn脚本
var script = CSharpScript.Create("int x = 12;");
var result = await script.RunAsync();
var variable = result.GetVariable("x");
int value = (int)variable.Value;
它崩溃在第二行上以下列:
无法加载文件或程序集 'System.Core程序,版本= 4.0.0.0, 文化=中性公钥= b77a5c561934e089'。定位的 程序集清单定义与程序集引用不匹配。 (异常来自HRESULT:0x80131040)
这是一个UWP应用程序,我想使用的Microsoft.CodeAnalysis.CSharp.Scripting
库。我通过NuGet安装了这个软件包。该应用程序编译和部署,但在此代码的第二行崩溃。
显然,问题出在System.Core
DLL中,它与我的应用程序(4.6)部署的版本和库(4.0)使用的版本之间存在冲突版本。有没有人有解决这个问题?有没有办法指定要使用的库的版本或目标框架(即使我使用的是UWP)?