0

我试图让我的头脑围绕 EF,并且遇到了障碍,我正在使用简单的博客/帖子结构并创建了类,例如:

''' <summary>
''' Represents a blog in the database
''' </summary>
''' <remarks></remarks>
Public Class Blog
    Public Property BlogID As Integer
    Public Property Name As String

    ''' <summary>
    ''' All posts in this blog
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Property BlogPosts As List(Of BlogPost)
End Class

现在如果我这样做

    Using db As New DBContext
        _blog = db.Blogs.
            FirstOrDefault(Function(m) m.BlogID = BlogID)

        Dim _posts = _blog.BlogPosts.First
    End Using

我在 BlogPosts 上得到一个空引用异常,它不是延迟加载。

现在我可以使用 .Include 强制它工作,但这会破坏对象。

我发现的所有 c# 示例都用“虚拟”声明了 BlogPosts 属性,我不知道 VB 版本会是什么?例如:

public virtual ICollection<BlogPosts> BlogPosts { get; set; } 
4

2 回答 2

1

使属性 Overridable 对其进行排序

于 2012-12-18T18:04:47.423 回答
0

使用 overrides 关键字,如本例所示。

这应该够了吧。

于 2012-12-18T18:05:49.203 回答