将两个表合并为一个 entity framework? (SQLite)

Combine two tables into one entity framework? (SQLite)

我正在使用 EntityFramework.SQLite 库,我一直想不出如何将两个 table 组合成一个临时 table 以便在 [= 中显示33=]代码。

这是我想要组合的两个 table 的代码,除了我的温度 table 的 class 称为 CategoryList(这是business/data 逻辑 dll 库的一部分):

Partial Public Class CategoryList
        Public Sub New()
            Me.CategoryInfo = New CategoryReference
            'Me.CategoryCode = New HashSet(Of CategoryCodes)
            Me.CategoryCodes = New CategoryCodes

        End Sub


        Public Property MyId As Integer

        <Key, ForeignKey("CodeID")>
        <Required>
        Public Property CodeID As Integer

        <Key, ForeignKey("CategoryID")>
        Public CategoryID As Integer

        'Public Property CategoryCode As ICollection(Of CategoryCodes)
        Public Property CategoryInfo As CategoryReference
        ' Public Property CategoryInfo As ICollection(Of CategoryReference)
        Public Property CategoryCodes As CategoryCodes
    End Class

    <Table("CategoryCodes")>
    Public Class CategoryCodes 'category shortnames/codes 
        <MaxLength(100)>
        <Required>
        Public Property CategoryCode As String
            Get
                Return _CategoryCode
            End Get
            Set(value As String)
                _CategoryCode = value
            End Set
        End Property
        Private _CategoryCode As String

        '<NotNull>
        ' <PrimaryKey>
        '<Unique(Name:="UQ__CategoryCodes__0000000000000081_CategoryCodes", Order:=0)>

        <Key>
        <Required>
        Public Property CodeID As Integer
            Get
                Return CategoryCode
            End Get
            Set(value As Integer)
                _CodeID = value
            End Set
        End Property
        Private _CodeID As Integer
    End Class
    <Table("CategoryReference")>
    Partial Public Class CategoryReference 'table design for category data

        <MaxLength(100)>
        Public Property CategoryName As String
            Get
                Return _CategoryName
            End Get
            Set(value As String)
                _CategoryName = value
            End Set
        End Property
        Private _CategoryName As String
        <MaxLength(100)>
        Public Property CategoryDescription As String
            Get
                Return _CategoryDescription
            End Get
            Set(value As String)
                _CategoryDescription = value
            End Set
        End Property
        Private _CategoryDescription As String

        '<Unique(Name:="UQ__CatagoryReference__000000000000005F_CatagoryReference", Order:=0)>
        <ForeignKey("CodeID")>
        <Required>
        Public Property CodeID As Integer
            Get
                Return _CodeID
            End Get
            Set(value As Integer)
                _CodeID = value
            End Set
        End Property
        Private _CodeID As Integer

        '<Unique(Name:="UQ__CatagoryReference__000000000000005A_CatagoryReference", Order:=0)>
        <Key>
        <Required>
        Public Property CategoryID As Integer
            Get
                Return _CategoryID
            End Get
            Set(value As Integer)
                _CategoryID = value
            End Set
        End Property
        Private _CategoryID As Integer

    End Class

它可能看起来很长,但 table 非常简单,get/set 块使它看起来很长(vb.net 编辑器可以将它们变成简单的 属性如果 she/he 希望)。我可能使用了 CategoryList class 错误,但这是我在我的主要应用程序代码中的 xaml 数据源中使用它的地方(我在 dll 库中处理业务 logic/data):

  Private Property ViewModel As List(Of UIELLUWP.DataAccess.CategoryList)
    Dim categories As New UIELLUWP.DataAccess.SQLiteDb

        ViewModel = categories.Categories.ToList

当前代码收到的错误: 当我 运行 上述代码时,我收到 Table "CategoryList" 不存在的错误。

我发现这个问题的解决方案是添加 asnotracking,因为正在进行跟踪。