2015-09-22 22 views
0

我知道這是一個可怕的黑客。然而...我可以部分加載程序集並替換其中的某些類嗎?

說我有程序集A,它提供了SomeNamespace.CookSomeNamespace.Potato類。 Cook通常調用Potato,我知道每個方法等。我創建了組件B,它提供了一個SomeNamespace.Potato類,其行爲與程序集A中的行爲不同,但可以用相同的方式調用。

我想組件A和B加載到我的計劃,但我想從A CookPotato從B.實際上,我貼敷的Potato。這可以做到嗎?

編輯:大會A是來自第三方,我無法控制它。

+0

[C#繼承]的可能重複(http://stackoverflow.com/questions/1031072/c-sharp-inheritance) –

+0

@MatthewWhited與程序集加載無關。我現在也澄清了我的問題,強調我不控制組件A. – FusterCluck

+0

然後創建一個新程序集並從第一個繼承。您需要將您想要替換爲虛擬的功能標記出來。 –

回答

0

除非上述程序集中的類已經構建,以支持其他類替換要使用的特定類/對象,否則不能這樣做。

讓我更具體。 .NET中沒有內容可以讓你做到這一點。

您的唯一選擇是反編譯程序集,更改代碼,然後重新編譯它。這可能是也可能不是容易的,甚至是不可能的,這取決於程序員做了什麼或想到什麼。

相關問題