C# 哪个dll包含泛型扩展方法?

C# 哪个dll包含泛型扩展方法?,c#,dll,extension-methods,C#,Dll,Extension Methods,我正在尝试使用CodeDom.Compiler之类的东西动态编译源代码,这意味着我需要手动引用基本程序集。我正在编译的源代码必须能够访问基本的列表扩展方法,例如Max()、Min()或Sum(),可能还有lambda表达式 当我编译源代码时,它说我缺少所需的程序集。。。目前我包括System.dll和System.Core.dll 我需要哪个dll来获取泛型的扩展方法?看看这个。调用CSharpCodeProvider时,必须手动指定编译器版本。像这样: var provider = new C

我正在尝试使用CodeDom.Compiler之类的东西动态编译源代码,这意味着我需要手动引用基本程序集。我正在编译的源代码必须能够访问基本的列表扩展方法,例如Max()、Min()或Sum(),可能还有lambda表达式

当我编译源代码时,它说我缺少所需的程序集。。。目前我包括System.dll和System.Core.dll

我需要哪个dll来获取泛型的扩展方法?

看看这个。调用
CSharpCodeProvider
时,必须手动指定编译器版本。像这样:

var provider = new CSharpCodeProvider(new Dictionary<string, string>{
                                       {"CompilerVersion", "v3.5"} });
var provider=新的CSharpCodeProvider(新字典){
{“compilervision”、“v3.5”});

克服这些麻烦的简单方法是查看Assembly.getReferencedAssemblys(),然后以这种方式向编译器添加引用。然后您就知道,只要编译器在Visual Studio中编译,任何使用这些功能的代码都将使用编译器编译。

可枚举类位于
System.Core.dll
中。是否缺少使用指令的
?我有基本的using指令(System、System.Linq和System.Collections.Generic),如果使用非扩展方法语法,它能工作吗?例如,
Enumerable.Max(x)
而不是
x.Max()
?是的,Enumerable.Max(x)可以。。。x、 Max()没有。这不是当前的问题:他在问题中说他已经引用了
System.Core
,并且
正在使用System.Linq
。使用非扩展方法语法是可行的,所以,问题出在别处(编译器版本)。我为不知道问题的答案而道歉。