2013-10-15 93 views
1

我的团队最近将一个ASP.NET网站项目从VS 2010移至2012.当在2010年创建一个新的页面和代码隐藏代码时,该文件将使用基于文件夹结构中的文件中创建例如,在MyProject的创建的文件名为MyPage.aspx.cs - > Folder1中 - > FOLDER2将会产生看起来像Visual Studio 2012不生成命名空间

namespace MyProject.Folder1.Folder2 
{ 
    public partial class MyPage 
    { 

    } 
} 

在2012年,在相同的文件,而不一个命名空间中创建,并将文件夹结构附加到带有下划线的类名称,如

public partial class MyProject_Folder1_Folder2_MyPage 
{ 

} 

我们更喜欢2010款式的外观,因为它看起来更清洁。我们怎样才能以这种方式获得用命名空间生成的新文件?这似乎应该是一个简单的设置,但我找不到任何关于该问题的文档。

+0

创建文件夹并将其下降到你想要的文件夹ouside的页面。 –

+2

尝试在'Application> Default namespace'下查找项目属性,并确保它被设置为某些内容(例如MyProject)。 –

+0

我应该添加,这只影响在Web项目文件夹下创建的文件。解决方案中的其他项目中创建的文件仍在使用名称空间创建。 Web项目没有应用程序>默认名称空间。 – jtrohde

回答

3

发生这种情况的原因是项目配置为Web Site而不是Web Application。尝试转换为一个Web应用程序,看看是否解决了有问题的行为。

关于Web Site项目,MSDN规定如下:

明确的命名空间不会添加到网页,控件,默认情况下的类,但您可以手动添加。

查阅这些链接的详细信息:

+0

将此标记为答案,因为它是正确的。不过,我似乎从一开始就误解了这种情况。该项目始终是一个网站项目(需要出于我在这里不会涉及的原因)。我们总是自己手动创建名称空间,所以当我发布这个问题时,确实没有不寻常的行为。 – jtrohde