当添加一个新类到一个命名空间,这是我所得到的(这是在MVC3项目)为什么类似的名称空间类不使用指令共享?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Foo.Models
{
public class Bar
{
}
}
在命名空间Foo.Models还有其他类。但是,通过将内容放置在不同的.cs位置来分离内容很好。我认为这是相当标准的。无论如何,我知道编译器可以发挥它的魔力。这是我的问题出现的地方。如果名称空间稍后组成,那么为什么总是需要重新定义该类正在使用的内容?如果它已经可以在某个地方的命名空间,那么它应该是必要说在每一个.cs
文件中定义的命名空间内一类using System;
?有人可以为我解释这一点,也可能阐明了一种可能的方式来实现这一点,我以一种方式定义名称空间的所有用例,然后添加到该名称空间的任何类本质上都有权访问那些。
实际上它们的作用域是命名空间,文件的行为像一个特殊的命名空间(global::) –
可伸缩性,好点:) –
@HenkHolterman:帮我理解你的评论。如果我在.cs文件的顶部使用* using *语句,那么* using *语句将影响该文件的类名解析。我不遵循你所说的话。 –