在asp.net 2.0 Web应用程序中使用.net 3.5程序集

时间:2010-05-21 11:24:04

标签: .net asp.net .net-3.5 asp.net-2.0

我有针对3.5框架的.net程序集构建。这个程序集有一个Foo类,有两个方法覆盖:

public class Foo {
    public T Set<T>(T value);
    public T Set<T>(Func<T> getValueFunc);
}

我在我的asp.net 2.0 Web应用程序中引用此程序集,以使用Set方法的第一次覆盖(不带Func)。

但是在构建时我得到一个错误,说我应该引用System.Core来使用System.Func委托......但是我没有使用这种类型......

有解决方法吗?

PS: 没有选项可以转换我的面向3.5框架的Web应用程序。

3 个答案:

答案 0 :(得分:2)

将您的网络应用转换为使用.NET 3.5(或4.0)。在那之后,一切都会好的。

如果你必须坚持使用.NET 2.0,这是我的想法

  • 尝试通过浏览到dll并手动添加它来引用System.Core程序集。 .NET Framework 3.5使用与2.0相同的CLR,因此如果它没有搞砸引用,它应该可以工作。 (例如,.NET 3.5中无法添加的内容)

答案 1 :(得分:0)

仅仅因为你没有在代码中调用特定的重载并不意味着编译器可以忽略它,如果它存在于你正在使用的类中,那么编译器需要知道它是什么。您需要参考System.Core或将您的项目转换为使用.net 3.5

答案 2 :(得分:-1)

您必须将您的Web应用程序升级到.net 3.5才能使其工作或从soce targetting .net 2.0重新编译程序集(如果可能的话)。