使用VB.NET,我有这个类
Public Class MyCollectionClass
Implements IEnumerable(Of MyClass)
Public Property MadeThisClassCuzINeedToSetThis() As String
' code here
End Class
我想这样做,但得到一个例外,说我不能做这个演员。
Dim objColl As MyCollectionClass
objColl = CType(IEnumerable(Of MyClass), MyCollectionClass)
任何人都可以告诉我如何让它发挥作用。感谢。
答案 0 :(得分:1)
请参阅此VB.NET/C# casting cheat sheet或documentation on CType
。主要问题是第一个参数应该是要转换的实例,而不是它的类型。这应该有效:
Dim myEnumerable As IEnumerable(Of MyObjectClass) = New MyCollectionClass()
Dim objColl = CType(myEnumerable, MyCollectionClass)
' objColl's type is inferred As MyCollectionClass
(请注意,由于MyClass
是关键字,我假设您实际上有不同的类名,我在示例中将其更改为MyObjectClass