VB.NET中方法链中的换行符

时间:2012-07-18 15:50:10

标签: vb.net

我试图在VB.NET中的以下方法链中添加换行符,但我的语法不正确:

HasRequired(Function(x) x.Issue).WithMany(Function(x) x.EntityNotes).HasForeignKey(Function(x) x.IssueID)

我想要类似的东西:

HasRequired(Function(x) x.Issue)
   .WithMany(Function(x) x.EntityNotes)
   .HasForeignKey(Function(x) x.IssueID)

2 个答案:

答案 0 :(得分:6)

在VB.Net中,您以前总是需要_才能继续行。现在这通常是可选的,但总是可以添加:

HasRequired(Function(x) x.Issue) _
   .WithMany(Function(x) x.EntityNotes) _
   .HasForeignKey(Function(x) x.IssueID)

但是,从Visual Studio 2010开始,您可以在许多情况下将其关闭,编译器将正确确定新“行”是否是前一行的一部分。

语言文档中的Typographic and Code Conventions涵盖了这一点。

答案 1 :(得分:2)

与C#不同,例如,换行符用于界定VB中的代码。因此,如果您想跨行继续声明,则需要使用_下划线符号,如下所示

HasRequired(Function(x) x.Issue) _
    .WithMany(Function(x) x.EntityNotes) _
    .HasForeignKey(Function(x) x.IssueID)