相关疑难解决方法(0)

将Extension方法应用于具有泛型类型的泛型类

我正在使用vb.net中的泛型类.
并且似乎扩展方法不能在没有指定类型的情况下应用于泛型类.

我有这个通用类

Public Class MyGeneric(Of T)
    'Methods and properties go here 
    '
    '
End Class  
Run Code Online (Sandbox Code Playgroud)

还行吧

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

End Sub  
Run Code Online (Sandbox Code Playgroud)

这不行(IDE给我的错误T未定义.)

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

End Sub
Run Code Online (Sandbox Code Playgroud)

这与.Net的静态检查有关.
对我说"你可能尝试用T型做的事可能不兼容,我不会允许你这样做."

PS我作为通用类所带来的所有痛苦来自另一个库,并在许多不同的地方使用.我很遗憾在继承的泛型类中继承和添加此方法.

.net vb.net generics static-typing

10
推荐指数
1
解决办法
3367
查看次数

标签 统计

.net ×1

generics ×1

static-typing ×1

vb.net ×1