[英]Differentiating class and namespace when class and namespace have the same name
[英]Namespace and class have the same name
我继承了一个大型C#项目。 其中一个类具有共享相同名称的名称空间和类。 结果,当创建类的实例时,我必须这样做:
using xxx.existingName
IinterfaceName dog = new existingName.existingName();
由于现有的类具有接口,因此我可以避免在=
的左侧具有existingName.existingName
。 使用var dog
也可以做到这一点。 但是我也想避免在右侧使用existingName.existingName
Name.existingName,因为它的可读性较差。
有什么方法可以执行此操作而无需重命名现有代码?
您可以通过using
指令重命名类或名称空间:
using ClassAlias = Test.Test;
using NamespaceAlias = Test;
public class Program
{
public static void Main()
{
ClassAlias a = new ClassAlias();
NamespaceAlias.Test t = new NamespaceAlias.Test();
}
}
namespace Test{
public class Test{}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.