代码之家  ›  专栏  ›  技术社区  ›  Malik Amurlayev

在ASP.NET 2.0 Web应用程序中使用.NET 3.5程序集

  •  2
  • Malik Amurlayev  · 技术社区  · 15 年前

    我有一个基于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: 无法转换我的Web应用程序以3.5框架为目标。

    3 回复  |  直到 15 年前
        1
  •  2
  •   Venemo    15 年前

    将Web应用程序转换为使用.NET 3.5(或4.0)。之后,一切都会好起来的。

    如果你必须坚持.NET 2.0,下面是我的想法

    • 尝试通过浏览到dll并手动添加来引用System.Core程序集。.NET Framework 3.5与2.0使用相同的clr,因此如果没有错误的引用,它应该可以工作。(例如.NET 3.5中不能添加的内容)
        2
  •  0
  •   Coding Flow    15 年前

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

        3
  •  -1
  •   this. __curious_geek    15 年前

    如果可能的话,您必须将Web应用程序升级到.NET 3.5才能使此工作或从SOCE Targeting.NET 2.0重新编译程序集。

    推荐文章