0
C#与Visual Studio编码,是否有可能将方法/接口添加到C#中的引用DLL?
是否可以添加一个方法或接口到引用的DLL,我添加到我的项目中 ?
或者唯一的办法是回到DLL的源头,添加数据& 创建一个新的DLL?
C#与Visual Studio编码,是否有可能将方法/接口添加到C#中的引用DLL?
是否可以添加一个方法或接口到引用的DLL,我添加到我的项目中 ?
或者唯一的办法是回到DLL的源头,添加数据& 创建一个新的DLL?
1- 否您无法向引用的dll添加任何内容。
2 - 是的,您需要更新该dll的来源并生成一个新的副本。
如果在同一解决方案中dll
是class 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;
}
}
}
扩展方法使你的方法“添加”到现有类型 而不创建新的派生类型,重新编译或以其他方式 修改原始类型。
根据源的可用性,您可以考虑使用现有功能的适配器,这将添加您需要的方法。 – Dennis
根据你想要做什么,你可以在引用的DLL中扩展一个类。你可以使用反编译器,如果你想在DLL中的类,变量和方法的名称可能会改变,但你仍然可以看到大部分的逻辑 –