.net – 将扩展方法应用于泛型类的泛型类

前端之家收集整理的这篇文章主要介绍了.net – 将扩展方法应用于泛型类的泛型类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在vb.net中使用泛型类.
并且似乎扩展方法不能应用于通用类而不指定类型.

我有这个泛型类

Public Class MyGeneric(Of T)
    'Methods and properties go here 
    '
    '
End Class

还行吧

<Extension()> _
Public Sub DoSomething(ByVal myGenericDoubleObj As MyGen(Of Double))

End Sub

这是不好的(IDE给我错误T没有定义.)

<Extension()> _
Public Sub DoSomethingGeneric(ByVal myGenericObj As MyGen(Of T))

End Sub

这与net的静态检查有关.
说我“你可以尝试用T类做的事情可能不兼容,我不会允许你这样做.”

附:所有这一切,我作为泛型的痛苦来自另一个图书馆,并在许多不同的地方使用.我很遗憾在我的继承的泛型类中继承和添加这个方法.

如果你的扩展方法是一个通用的方法,它应该工作

即DoSomething(Of T)()只显示DoSomething()

<Extension()> _
Public Sub DoSomething(Of T)(ByVal myGenericObj As MyGeneric(Of T))
End Sub

希望这可以帮助

猜你在找的VB相关文章