我可以从参考源重建.NET类吗?

时间:2015-11-24 15:24:03

标签: c# .net reference-source

我想在System.Net.HttpWebRequest类中添加一些方法以满足我的需要。我尝试过反射,但是我需要改变它的许多成员类方法也很复杂。

我正在通过.NET参考源进行调试,我可以查看这些类的源代码。我是否可以复制每个相关的类源代码并构建我自己的类?

2 个答案:

答案 0 :(得分:4)

对于某些班级是,但对于许多班级

.NET类经常使用未公开公开的内部类,您不仅需要重建您感兴趣的类,还需要重建所有内部引用。

我建议不要尝试这样做,而是使用Extension Methods或者如果这不能解决您的问题,请提出一个新问题来描述您要完成的确切事情,也许我们可以向您展示一种更简单的方法这样做。

答案 1 :(得分:2)

一切皆有可能。

您有源代码。你知道如何复制和粘贴。当然,您可以根据自己的目的调整该代码。

问题是;这是合法的吗?

要回答这个问题,您只需要examine the license作为参考来源。为此,假设您遵守麻省理工学院的许可证(非常宽松),这是完全合法的。

接下来的问题是;你应该?可能不是。最有可能的是,您可以通过帮助程序类或子类添加所需的功能,或通过Extension Methods添加新方法。