C#:如何为类创建“别名”

时间:2011-08-16 17:18:49

标签: c# alias

我甚至不知道它是否被称为别名,但无论如何让我继续。

你知道C#中的System.String类型是如何用“字符串”排序“别名”的?在Visual Studio中,“string”是小写和蓝色文本。我想对一些冗长的班级名字这样做。有些都像“RelocatedPlantProductReleaseItem”。我无法更改它的名称,但这么长的名字确实使代码啰嗦。我希望能够使用“Rppr”代替。所以不要这样:

RelocatedPlantProductReleaseItem Item = new RelocatedPlantProductReleaseItem();

我会这样:

Rppr Item = new Rppr();

我知道我可以创建一个名为Rppr的类,并让它继承自RelocatedPlantProductReleaseItem,但这看起来很糟糕。

另外,我上面给出的场景完全是虚构的。我只是用它来演示我想要实现的基本功能。

另外,当“string”表示System.String?

时,技术上称之为什么

更新:感谢所有答案,伙计们,但我想我应该指明我希望这是一个全球性的事情。我不想在每个代码文件的顶部指定它。我想在一个地方指定它,它在整个应用程序中的任何地方都可以工作,甚至在引用其程序集的其他程序集中也是如此。

7 个答案:

答案 0 :(得分:32)

使用using指令

using Rppr = Namespace.To.RelocatedPlantProductReleaseItem;

编辑 Op澄清要求全球解决方案。

C#中没有typedef样式等效项,可以创建类型名称的全局替换。您需要在每个要使用此缩写的文件中使用using指令,或者使用该名称的长版本。

答案 1 :(得分:7)

string是C#语言提供的便利,用于引用实际的CLR类型System.String

使用using指令可以获得类似的结果。在您希望缩短名称的文件顶部,添加以下行:

using ShortName = Namespace.ReallyLongClassNameGoesHereOhGodWhy;

然后你可以说ShortName myVar = new ShortName();

请注意,您必须在每个文件的基础上执行此操作。使用单个声明,您无法获得与string相同的覆盖率。

答案 2 :(得分:4)

尝试

using Rppr = SomeNamespace.RelocatedPlantProductReleaseItem;

Reference

答案 3 :(得分:2)

你可以这样做:

using Rppr = RelocatedPlantProductReleaseItem;

答案 4 :(得分:1)

使用以下方法创建别名:

using alias = LongClassName;

该别名在您声明它的命名空间中可见。

答案 5 :(得分:1)

您可以在文件顶部添加using指令:

 using Rppr = MyProjectNs.RelocatedPlantProductReleaseItem;

但它(仅)适用于每个文件,而不适用于项目。

答案 6 :(得分:0)

尝试使用其他使用

添加以下内容
using Rppr = YourItemsNamespace.RelocatedPlantProductReleaseItem;