C# 静态的两个名称 class
Two names for a C# static class
它非常懒惰,但我想知道是否有可能让两个名称本质上指向同一个静态 class。
我有一个很长的描述性静态 class 名称 BusinessLogicServiceUtility
(例如),它在代码中看起来相当冗长。
我喜欢使用 BLSU
作为替代方案,所以我尝试用我的短 class 名称扩展长 class:
public static class BLSU : BusinessLogicServiceUtility
{
}
这可能看起来很菜鸟,但事实证明,它不起作用。
看起来好像我可以将长 class 中的每个方法和短 class 中的方法包装起来,但是有 很多 方法,这使得维护它变得很痛苦并绕过了整个懒惰目标。
有没有一种方法可以将两个名称分配给一个静态 class,或者其他方法只是 "extending" 一个静态 class?
您可以为类型创建别名:
using BLSU = Your.Namespace.BusinessLogicServiceUtility;
正在访问以下类型的成员:
BLSU.SomeStaticMethod();
使用 C# 6,您甚至可以走得更远 - 访问类型的静态成员 而 完全不必限定类型名称:
using static Your.Namespace.BusinessLogicServiceUtility;
正在访问以下类型的成员:
SomeStaticMethod();
此外,您可以使用 using static
,这样您就可以在使用这些方法时完全不使用 class 作为前缀:
在文件的顶部:
using static BusinessLogicServiceUtility;
并假设您的静态 class 中有一个方法 public static DoLogicThings()
,您现在可以直接访问它:
public void SomeMethod()
{
DoLogicThings();
}
这是在 C#6 中添加的。
它非常懒惰,但我想知道是否有可能让两个名称本质上指向同一个静态 class。
我有一个很长的描述性静态 class 名称 BusinessLogicServiceUtility
(例如),它在代码中看起来相当冗长。
我喜欢使用 BLSU
作为替代方案,所以我尝试用我的短 class 名称扩展长 class:
public static class BLSU : BusinessLogicServiceUtility
{
}
这可能看起来很菜鸟,但事实证明,它不起作用。
看起来好像我可以将长 class 中的每个方法和短 class 中的方法包装起来,但是有 很多 方法,这使得维护它变得很痛苦并绕过了整个懒惰目标。
有没有一种方法可以将两个名称分配给一个静态 class,或者其他方法只是 "extending" 一个静态 class?
您可以为类型创建别名:
using BLSU = Your.Namespace.BusinessLogicServiceUtility;
正在访问以下类型的成员:
BLSU.SomeStaticMethod();
使用 C# 6,您甚至可以走得更远 - 访问类型的静态成员 而 完全不必限定类型名称:
using static Your.Namespace.BusinessLogicServiceUtility;
正在访问以下类型的成员:
SomeStaticMethod();
此外,您可以使用 using static
,这样您就可以在使用这些方法时完全不使用 class 作为前缀:
在文件的顶部:
using static BusinessLogicServiceUtility;
并假设您的静态 class 中有一个方法 public static DoLogicThings()
,您现在可以直接访问它:
public void SomeMethod()
{
DoLogicThings();
}
这是在 C#6 中添加的。