gpt4 book ai didi

c# - 在 Roslyn CP2 中包含 System.Linq 时出现 CompilationErrorException

转载 作者:太空狗 更新时间:2023-10-29 22:52:21 25 4
gpt4 key购买 nike

我已经下载了 Roslyn CTP 并遇到了以下错误。执行 session.Execute(@"using System.Linq;"); 行时抛出 CompilationErrorException 并显示以下消息:

(1,14):错误 CS0234:命名空间“System”中不存在类型或命名空间名称“Linq”(是否缺少程序集引用?)

我的代码是:

namespace RoslynError
{
using System;
using Roslyn.Scripting;
using Roslyn.Scripting.CSharp;

internal class RoslynError
{
static void Main(string[] args)
{
var engine = new ScriptEngine();
Session session = engine.CreateSession();
session.Execute(@"using System.Collections;");
session.Execute(@"using System.Linq;");
Console.ReadKey();
}
}
}

我对为什么 System.Linq 行抛出错误而 System.Collections 正常感到特别困惑。

最佳答案

引擎需要引用 System.Linq 命名空间所在的程序集 (System.Core.dll)

engine.AddReference(typeof(System.Linq.Enumerable).Assembly.Location);

这需要在创建 session 之前完成。

关于c# - 在 Roslyn CP2 中包含 System.Linq 时出现 CompilationErrorException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15307488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com