2013-07-05 25 views
-1

例如,如果我考虑记录是一个Dictionary(of String, String),我考虑纪录由List(of Dictionary(of String, String))设置到,它就会很丑陋到必须不断地使用这些类型定义。我可以在VB.NET中为自己的经常使用的类型提名自己的简写名称吗?

我想在VB.NET中做的是提名这种类型的名称。因此,例如,而不是下面的代码:

private sub processRecordList(recList as List(of Dictionary(of String, String))) 
    dim myNewRecord as Dictionary(of String, String) 
end sub 

我可以只使用:

private sub processRecordList(recSet as RecordSetType) 
    dim myNewRecord as RecordType 
end sub 

我认为这将是一个很大清洁,但是这可能吗?

+1

为什么要改名字?你只是混淆了这种类型,这使得追随你的程序员变得更难。 – JDB

+0

@ Cyborgx37你不想写一个类或一个结构的完整定义,你需要将它作为一个类型引用。这就是定义的目的。我不认为这是因为我使用嵌套泛型构建了我的“类”。也许,观察者眼中出现了迷惑。 – nakedfanatic

回答

2

我不确定这是否会起作用,但是您是否考虑过创建一个只从您的更复杂的类继承的新类?使用

Public Class MyComplexClass 
    Inherits List(of Dictionary(of String, String)) 

End Class 
+0

这也适用,实际上可能比@ Styxxy的解决方案更清洁。例如,我可以明确地说,RecordSetType继承'List(Of RecordType)',而“Imports”解决方案迫使我拼出'System.Collections.Generic.List(Of System.Collections.Generic.Dictionary(Of String,String ))' – nakedfanatic

3

您可以Import别名

Imports IntList = System.Collections.Generic.List(Of Integer) 

Dim mylist As New IntList() 
' is equal to 
Dim mylist As New List(Of Integer) 
+0

谢谢。这工作!必须使用这些类型的完全限定名称有点难看,但稍后会节省很多丑陋。 – nakedfanatic

+0

抱歉,即使您的答案完全正确,我也不能提名两个“已接受的答案”。 – nakedfanatic

相关问题