0

我正在用 C# 构建一个程序,并且使用了很多 dll。但是,我相信我只使用了每个 dll 中的少量函数,因此想知道是否有可能以某种方式访问​​ dll 并将使用的函数仅提取到单独的 dll 中。

或者换句话说,假设我有 2 个 dll A 和 B。A 具有函数 a、b 和 c,而 B 具有函数 1、2 和 3。如果我只使用 a 和 2,有什么办法(或者甚至合法吗??)以某种方式制作只有a和2的第三个dll C?

目的是我不必参考 2(实际上更像 20),而只需要 1。

这可能/合法吗????我知道微软有一个工具可以将 dll 组合成一个,但我不知道如何编辑它们或任何东西......谁能解释一下?

4

1 回答 1

0

@Mattb2291:我建议采用不同的方法。取一个具有函数 a 和 2 的类 C。A 类和 B 类应该从 C 继承。在 C 类中,为方法 a 和 2 提供基本实现。

但是对于某些事情,您需要牢记:

首先,从 OOP 的角度来看,A 类和 B 类是否与同一个问题域相关?其次,如果方法 a 和 2 正在访问其各自类中的任何类成员,则必须将它们移至 C 类。您的代码可能如下所示:

class C{
    void a(){
    }

    void 2(){
    }
}

class A:C{
}

class B:C{
}

这个答案是从 OPP 的角度来看的。在您的项目中实施之前,您必须对其进行验证。

于 2012-08-25T21:45:23.253 回答