我对来自不同类的两种方法之间存在模糊的引用。
这些类位于不同的名称空间中,它们共享相同的结构,如:
MyApp.Models.Folder1.Class1
MyApp.Models.Folder2.Class2
为什么我不能这样使用?
using MyApp.Models;
//and use this static method
Folder1.Class1.StaticMethod();
有没有办法只为方法使用命名空间?像:
[using(MyApp.Models.Folder1)]
public ContentResult SomeGetMethod(){
if(Class1.StaticBooleanMethod()) return "nice baby!";
return "that was horrible!";
}
答案 0 :(得分:1)
为什么我不能这样使用?
从MSDN documentation开始,using指令不允许您访问嵌套在您指定的命名空间中的任何命名空间。
有没有办法只为方法使用命名空间?像:
无法做到这一点,但您可以完全限定名称:
if (MyApp.Models.Folder1.Class1.StaticBooleanMethod()) return "nice baby!";
或使用别名:
using Folder = MyApp.Models.Folder1;
...
if(Folder.Class1.StaticBooleanMethod()) return "nice baby!";