c#:如何创建别名为类
本文关键字:别名 创建 何创建 | 更新日期: 2023-09-27 18:05:40
我甚至不知道它是否称为别名,但让我继续。
你知道这个系统。c#中的字符串类型是sort "别名"与"string" ?在Visual Studio中,"string"为小写蓝色文本。我想对一些冗长的类名做这样的处理。有些都像"relocatedplantproductreleaseitem"。我不能更改它的名称,但是这么长的名称确实使代码冗长。我希望能够使用" rpp "代替。所以不用这个:
RelocatedPlantProductReleaseItem Item = new RelocatedPlantProductReleaseItem();
我想:
Rppr Item = new Rppr();
我知道我可以创建一个名为Rppr的类,并让它从RelocatedPlantProductReleaseItem继承,但这似乎很粗糙。
同样,我上面给出的场景完全是虚构的。我只是用它来演示我想要实现的基本功能。
还有,当"string"system . string ?代表
我希望这是一个全局的事情。我不想在每个代码文件的顶部指定它。我想在一个地方指定它,它在整个应用程序中的任何地方都可以工作,甚至在引用其程序集的其他程序集中。
使用using指令
using Rppr = Namespace.To.RelocatedPlantProductReleaseItem;
EDIT Op澄清请求全局解决方案。
在c#中没有等价的typedef
样式可以创建一个全局替换类型名。你需要在每个想要这个缩写的文件中使用using指令,或者使用长版本的名称。
string
是c#语言为引用实际CLR类型System.String
提供的便利。
您可以使用using
指令获得类似的结果。在您希望缩短名称的文件顶部,添加以下行:
using ShortName = Namespace.ReallyLongClassNameGoesHereOhGodWhy;
然后输入ShortName myVar = new ShortName();
注意,您必须在每个文件的基础上执行此操作。您无法通过单个声明获得与string
相同的覆盖率。
Try
using Rppr = SomeNamespace.RelocatedPlantProductReleaseItem;
参考你可以这样做:
using Rppr = RelocatedPlantProductReleaseItem;
创建别名:
using alias = LongClassName;
该别名在您声明它的命名空间中可见
你可以在你的文件顶部添加一个using
指令:
using Rppr = MyProjectNs.RelocatedPlantProductReleaseItem;
但它(只)适用于每个文件,而不是一个项目。
尝试在您的其他使用
中添加以下内容using Rppr = YourItemsNamespace.RelocatedPlantProductReleaseItem;
从c# 10开始,现在可以通过使用global
修饰符来全局执行此操作。
global using Rppr = Namespace.To.RelocatedPlantProductReleaseItem;
这可以添加到编译中的任何文件中,然后应用于所有其他文件,但必须在任何没有global
修饰符的using
指令之前添加。