簡體   English   中英

從類型名稱轉換為字符串

[英]Cast to a type from the type name as a string

我有一個現有的基本類型,我想根據類型的名稱將其強制轉換為派生類型,例如字符串:

public void DoStuffInDerivedType(string derivedName) {
   (base as Type.GetType(derivedName)).DoThisThing();
}

我很確定這是不可能完成的,但一定會知道的。 謝謝

編輯:我知道我可以使用類型名稱的反射來構造對象,但我想使用現有的對象。 我也知道這通常是個壞主意。 但是我想將此用於SpecFlow BDD功能。

我會重復建議您可能不需要這樣做,但是因為我之前已經做過此操作:

Convert.ChangeType(ItemToCast, Type.GetType(stringNameOfType)))

應該為您工作。

我認為您無需將其轉換為派生類型。 您應該能夠將其強制轉換為基本類型,並使用共享接口(無論是基類還是文字接口)來執行所需的操作。

如果不是,請考慮將行為添加為接口要求,以便您可以這樣做。

最后:您要這樣做的一種可能性是,如果您要覆蓋演員表...在這種情況下,我幾乎可以肯定,如果沒有一些沉重的負擔,您將無法做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM