c# - Visual Studio 2012 不生成命名空间

标签 c# asp.net visual-studio-2012 namespaces

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

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

    }
}

2012年,创建了没有命名空间的同一个文件,文件夹结构用下划线附加到类名后,如
public partial class MyProject_Folder1_Folder2_MyPage
{

}

我们更喜欢 2010 风格的外观,因为它对我们来说看起来更干净。我们如何才能以这种方式使用命名空间生成新文件?这似乎应该是某个地方的简单设置,但我找不到有关该问题的任何文档。

最佳答案

发生这种情况是因为项目配置为 Web Site而不是 Web Application .尝试将 转换为 Web 应用程序,看看是否解决了相关行为。

关于Web Site项目,MSDN 声明如下:

Explicit namespaces are not added to pages, controls, and classes by default, but you can add them manually.



查看这些链接了解详情:
  • Web Application Projects versus Web Site Projects in Visual Studio
  • ASP.NET Web Site or ASP.NET Web Application?
  • 关于c# - Visual Studio 2012 不生成命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19383507/

    相关文章:

    asp.net - 当托管在 IIS (ASP.NET) 上时,Quartz 在后台运行多长时间?

    javascript - jQuery AJAX 检测幻灯片上/下运动中的数据更改显示

    visual-c++ - 为 Visual Studio 2012 安装 OpenCV

    c# - 如何从 XML 向 <img> 提供图像源?

    c# - self 跟踪实体的目的是什么?

    c# - ICommunicationObject.State 不起作用?

    c# - 如何在 ASP.NET Web API 异步 Controller 方法中返回对象列表

    c++ - 使用 Boost 编译的 Visual Studio

    c# - 如何获取服务引用以使用基于第 3 方 WSDL 的消息契约(Contract)正确生成,或者在 WF 服务项目中强制不使用消息契约(Contract)

    C#反序列化带有命名空间的xml