支持VB.NET中的导入命名空间功能C#

支持VB.NET中的导入命名空间功能C#

问题描述:

我用VB.NET。我学习的游戏源代码是用C#编写的。我觉得很烦人,我必须将using System.Diagnostics添加到源代码中才能键入Debug.WriteLine...。我在项目属性下进行了检查,但找不到允许我将名称空间添加到“导入的命名空间”的“参考”选项卡。我在哪里可以找到这在C#中?支持VB.NET中的导入命名空间功能C#

另外,为什么我不能在C#中执行此操作? Imports System.Math

在C#中,你应该始终明确指定要使用或使用全名命名空间:

System.Diagnostics.Debug.WriteLine (...); 

而且,有一个解决方案视图下的参考选项卡,你必须引用所需的组件出现,因为许多程序集默认情况下未被引用。

+0

这是一个如此痛苦的对接。当你不能使用智能感知来找到你需要的东西时,这是令人沮丧的。 – 2010-04-09 08:38:10

+0

达林季米特洛夫在他的回答中指出你如何能部分解决问题。不幸的是,这不能用于未引用的程序集。 – n535 2010-04-09 08:40:54

+1

你的答案是这样的:你不应该使用'using'来导入命名空间,这对我来说有点困惑。 – 2010-04-09 08:50:27

将光标放置在源代码中Debug,红色波浪线出现在字的右下角,按Shift + Alt键+ F10输入 - 的使用自动添加。

此外,为什么我不能在C#中执行此操作? 进口X = System.Math

您可以:using x = System.Math;

+0

我很抱歉,我的意思是Imports = System.Math。我会改变我的问题。 – 2010-04-09 08:44:44

+0

Shift + Alt + F10很方便。非常感谢你。 – 2010-04-09 08:48:14

+3

一个更好的捷径是CTRL +。这在手指上更容易 – NibblyPig 2010-04-09 09:11:40

我不认为你可以在C# “潜伏” 的命名空间就像你可以在VB.NET(不知道)。

至于关于System.Math的第二部分,您可以在每个文件的顶部执行以下操作。

using SM = System.Math; 

SM.Abs(...); 
+0

我改变了我的问题我的意思Imports System.Math – 2010-04-09 08:48:54

+2

@Fred F.:因为c#不支持Imports关键字。此外,System.Math是一个类,而不是一个名称空间。 – Inisheer 2010-04-09 08:50:16

+0

是的,这就是错误信息所表示的内容,但它没有说明原因,并且错误的帮助信息不提供任何信息。 – 2010-04-09 09:11:08

可以修改用于新C#类的Visual Studio模板。这与Visual Basic中的功能不完全相同,但对于任何新创建的类,都可以获取您喜欢的名称空间。

这不仅仅是点击几下鼠标不幸的是多一点,但你会发现在安森霍顿的博客文章中描述的所有细节:

Item templates - adding references by default

注意,这样使得你不仅修改默认的using指令,还可以修改添加新类时自动引用的程序集。

由于与Visual Studio 2005相关的博客帖子,您可能需要调整一些路径,例如class.zip文件位于Visual Studio 2008中的C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplates\CSharp\Code\1033下。