如果我创建一个新的控制台应用程序,那么它可以编译:
Module Module1
Sub Main()
Console.ReadKey()
End Sub
End Module
另一种选择是:
Imports System.Console
Module Module1
Sub Main()
ReadKey()
End Sub
End Module
我现在不明白的是,因为这是一个控制台应用程序,为什么这些项目不以如下方式创建?
Module Module1
Sub Main()
ReadKey()
End Sub
End Module
换句话说:如果它是一个控制台应用程序,为什么我需要导入控制台命名空间?
这与使用winForms
我说的应用程序时的行为相同Me.someControl
吗?虽然在那种情况下我可以离开Me
它并且它仍然会在不导入表单命名空间的情况下编译。
编辑
Imports System.Console
Module Module1
Sub Main()
ReadKey()
Console.ReadKey() '<<adding namespace seems a bit pointless as I still need to specify Console
End Sub
Function ReadKey() As Boolean
Return True
End Function
End Module
进一步编辑
汉斯建议了进一步的行为,为了复制这一点,我有以下几点:
我已经像这样添加了一个新ClassLibrary1
的Solution
......
在控制台ConsoleSandpit
中,我得到了以下内容,并引用了ClassLibrary1
这样的...
...唯一的问题是我期待上面的编译错误,但它似乎运行正常!