如何在VB.NET中的每一行上添加注释?

时间:2012-03-02 16:41:38

标签: .net vb.net

我曾经是一名C#开发人员,因此这种评论风格在C#中非常容易。这让我抓狂,但是如何在VB.NET中执行此操作而不会出现语法错误?:

Private ReadOnly Property AcceptableDataFormat(ByVal e As System.Windows.Forms.DragEventArgs) As Boolean
    Get
        Return e.Data.GetDataPresent(DataFormats.FileDrop) _          'this is a file that a user might manipulate
                OrElse e.Data.GetDataPresent("FileGroupDescriptor")   'this is a typical Outlook attachment
    End Get
End Property

3 个答案:

答案 0 :(得分:11)

不幸的是你做不到。 VB.Net不允许注释出现在跨越多行的语句中间(包括显式和隐式行连续)。评论必须高于声明或最后一行。

此规则的例外是语句lambdas。评论出现在语句lambda中是好的,即使它在技术上是一个语句。

答案 1 :(得分:3)

从续行中删除该注释,它应该没问题。注释不能与行继续使用。行继续必须是该行的最后一个字符,因此您的注释不能出现在它之后。

以下是一个类似的问题:Why must VB.Net line continuation character be the last one on line

所以这样:

 Private ReadOnly Property AcceptableDataFormat(ByVal e As System.Windows.Forms.DragEventArgs) As Boolean
        Get
            'Return a file that a user has dragged from the file system 
            'or a typical Outlook attachment
            Return e.Data.GetDataPresent(DataFormats.FileDrop) OrElse   
                   e.Data.GetDataPresent("FileGroupDescriptor")         

        End Get
    End Property

这是一个长期困扰VB开发人员的限制。

答案 2 :(得分:0)

显然现在可以在Visual Studio 2017中使用

Public Function foobarbaz(ByVal foo As Integer,   '' qux
                          ByVal bar As String,    '' quux
                          ByVal baz As DateTime)  '' garply

  Return foo.ToString &         '' Concatenate foo
         bar &                  '' with bar
         baz.ToString           '' and baz

End Function