[英]vb.net Dictionary of Dictionary
晚上好,
有谁有任何想法我可以在VB.net中做这样的事情?
我遇到的问题是将iDatabase声明为iTable的字典,因为它需要类类型。
任何帮助将不胜感激。
问候,科林
Module Module1
Sub Main()
Dim Database As New iDatabase
Dim Users = Database.Add("User", User)
Users.Add(Guid.NewGuid, New User() With {.Username = "username"})
End Sub
End Module
Public Class iDatabase
Inherits Dictionary(Of String, iTable)
Public Class iTable(Of Entity As Class)
Inherits Dictionary(Of Guid, Entity)
End Class
End Class
Public Class User
Public Property Username As String
End Class
我觉得你有点过分复杂了。 看起来你想要一个“字典词典”,你有"User"
作为键,然后在该键下,另一个字典条目带有映射到User
的Guid
键。 在这种情况下,您可能根本不需要子类Dictionary(Of TKey, TValue)
。
如果您要有多个类(例如Admin
, User
),那么您应该使用通用接口。 让我们看一个完整的例子:
Public Interface IUser
Property Username As String
End Interface
Public Class User Implements IUser
Public Property Username As String Implements IUser.Username
End Class
Public Class Admin Implements IUser
Public Property Username As String Implements IUser.Username
End Class
Sub Main()
Dim Database As New Dictionary(Of String, Dictionary(Guid, IUser))
Database.Add("User", New Dictionary(Of Guid, IUser))
Database("User").Add(Guid.NewGuid, New User() With {.Username = "username"})
Database("User").Add(Guid.NewGuid, New Admin() With {.Username = "username"})
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.