以继承方式让EF使用泛型
2014-05-25 22:32 Jason Jiang 阅读(367) 评论(0) 收藏 举报Entity Framework 无法直接使用泛型,但是我们可以通过使用继承的办法来间接使用泛型。
Imports System.Data.Entity
Imports System.ComponentModel.DataAnnotations
Module Module1
Sub Main()
Database.SetInitializer(New MigrateDatabaseToLatestVersion(Of mycontext, Migrations.Configuration)())
Dim myc As New mycontext
Dim myg As New GenericDerivative With {.x = "uuu", .y = "cdd"}
Dim myge As New GenericProperty With {.GenericString = myg}
myc.Gp.Add(myge)
myc.SaveChanges()
Console.WriteLine("create Successfully")
For Each w In myc.Gp
Console.WriteLine(w.GenericString.x)
Next
Console.ReadKey()
End Sub
End Module
Public Class mycontext
Inherits DbContext
Public Property Gp As DbSet(Of GenericProperty)
End Class
Public Class GenericProperty
<Key()>
Public Property id As Integer
Public Overridable Property GenericString As GenericDerivative
End Class
Public Class Generic(Of T)
<Key()>
Public Property id As Integer
Public Property x As T
Public Property y As T
End Class
Public Class check
<Key()>
Public Property id As Integer
Public Property u As String
Public Property t As Boolean
End Class
Public Class GenericDerivative
Inherits Generic(Of String)
End Class
浙公网安备 33010602011771号