VS2015 Intellisense无法识别CompilerServices.Caller-Classes,但服务器正常运行

时间:2019-03-08 08:22:08

标签: vb.net webforms user-controls intellisense false-positive

我知道这不是一个编程问题,但是我不确定在哪里放置它。 问题是我创建了一个新的用户控件。它在服务器上运行良好。

在VS中所做的编辑会直接影响正在运行的开发系统。

主要错误是当我尝试在页面中使用此模块时。再次,页面运行正常,没有错误。但是,每当我尝试在代码中使用Module的名称时,Visual Studio都会显示错误,并指出未声明。
反过来,这导致我代码中的一半行被标记为错误,从而几乎不可能发现实际错误。甚至更奇怪的是,在我使用该模块的页面上,堆栈跟踪中的行号偏移了大约3或4。

我不知道它是否相关,但是在用户控制模块中,我有以下代码:

Public Shared Sub WriteToDebug(
        ByRef tb_debug As TextBox,
        Optional str As String = Nothing,
        Optional extraInfo As Boolean = True,
        Optional newLine As Boolean = True,
        <System.Runtime.CompilerServices.CallerFilePath> ByVal Optional file As String = "",
        <System.Runtime.CompilerServices.CallerMemberName> ByVal Optional member As String = "",
        <System.Runtime.CompilerServices.CallerLineNumber> ByVal Optional line As Integer = 0
    )
    If tb_debug Is Nothing Then
        Exit Sub
    End If
    tb_debug.Text &= If(extraInfo, DateTime.Now.ToString("HH:mm:ss.fff") & " - " & member & "[" & line.ToString() & "]" & If(str Is Nothing, "", ": " & str), If(str Is Nothing, "", str)) & If(newLine, vbNewLine, "")
End Sub

智能感知显示在其中

  

未定义System.Runtime.CompilerServices.CallerFilePath
  未定义System.Runtime.CompilerServices.CallerMemberName
  未定义System.Runtime.CompilerServices.CallerLineNumber

有人知道这个问题是什么以及如何解决?

编辑: 原来,这就是问题所在。在注释掉之后,它将其注册为有效模块。如何使VS识别System.Runtime.CompilerServices?

编辑2: 它知道CompilerServices,但不知道我在这里使用的三个类。 enter image description here

0 个答案:

没有答案