2016-06-21 46 views
0

C#与Visual Studio编码,是否有可能将方法/接口添加到C#中的引用DLL?

是否可以添加一个方法或接口到引用的DLL,我添加到我的项目中 ?

或者唯一的办法是回到DLL的源头,添加数据& 创建一个新的DLL?

+1

根据源的可用性,您可以考虑使用现有功能的适配器,这将添加您需要的方法。 – Dennis

+1

根据你想要做什么,你可以在引用的DLL中扩展一个类。你可以使用反编译器,如果你想在DLL中的类,变量和方法的名称可能会改变,但你仍然可以看到大部分的逻辑 –

回答

2

1- 您无法向引用的dll添加任何内容。

2 - 是的,您需要更新该dll的来源并生成一个新的副本。

如果在同一解决方案中dllclass library,则只需添加方法/接口和Rebuild即可。

扩展方法:

您可以随时添加Extension Method到你无法控制的一类,它是否是一个核心的.NET类或引用dll。下面是一个例子添加一个方法到String类:

namespace ExtensionMethods 
{ 
    public static class MyExtensions 
    { 
     public static int WordCount(this String str) 
     { 
      return str.Split(new char[] { ' ', '.', '?' }, 
          StringSplitOptions.RemoveEmptyEntries).Length; 
     } 
    } 
} 

扩展方法使你的方法“添加”到现有类型 而不创建新的派生类型,重新编译或以其他方式 修改原始类型。

相关问题