返回未指定类型的泛型
|
是否可以创建一个返回未指定类型的泛型的函数,像这样?
Public Function Create(ByVal type As Type) As DeserializationHelper(Of )
Dim DynamicHelper = GetType(DeserializationHelper(Of )).MakeGenericType(type)
Return Activator.CreateInstance(DynamicHelper)
End Function
除了强烈键入返回值外,此处所有内容都适用。我可以将其作为对象,非泛型接口或非泛型基类返回,但我正在尝试制作一种非常简洁的流利样式API。
我正在尝试创建如下语法:
Dim Loader As New XLoader(parentContainer, Map)
Dim MyCreature As Creature = Loader.Create(GetType(Creature)).From(xml.<Creature>)
...而且是的,我知道有内置的xml序列化程序-我希望它们为我工作,但我需要更多控制权。 ;)
如果我将这一部分移到另一个项目中并用C#编写(然后从VB.NET项目中使用),那么C#的Dynamic关键字对我有帮助吗?
谢谢。 :)
没有找到相关结果
已邀请:
1 个回复
挂帘妈乡
的专家,但希望这会有所帮助: