这可能真的很愚蠢,但是我对VB和Dot.net还是比较陌生,在网上找不到合适的模拟设备。每次使用“立即”窗口键入Debug.Print(x)
时,都会收到以下消息:
error BC30561: 'Debug' is ambiguous, imported from the namespaces or types 'System.Web.Util, System.Diagnostics, System.Configuration'.
如果我输入System.Diagnostics.Debug.Print
,它可以正常工作,但是我希望可以避免多余的输入。
没有什么帮助?
注意:我在项目级别将System.Diagnostics
称为imported namespace
。
答案 0 :(得分:2)
即时窗口通过构建和使用表达式来评估表达式 当前选择的项目。
在立即窗口中输入Debug.Print("...")
时,它将被视为要求值的表达式,因此它将被包装在当前上下文中并进行构建和执行。由于您已导入,System.Web.Util
,System.Configuration
和System.Diagnostics
,因此除了System.Diagnostics
中定义的System.Configuration.Debug Class和System.Web.Util.Debug class之外,还定义了{{3}}和{{3}} ,您会得到错误
错误BC30561:“调试”不明确,是从名称空间导入的,或者 类型“ System.Web.Util,System.Configuration,System.Diagnostics, 系统配置”。
即使不能从您的代码严格访问这两个其他类。这是由于VB允许导入名称空间和类。请注意,这只会在立即窗口中发生,而不会在用户代码中发生。
如果要在“即时”窗口中发出Debug.Print
命令,请先在命令前输入> ,然后将其作为不带括号的命令发出
>Debug.Print "some expression"
还是使用Debug.Print
命令别名?。
? "some expression"
答案 1 :(得分:1)
答案 2 :(得分:1)
尝试此导入
Imports System.Diagnostics
(将其放在“公共课...”的上方)