2011-02-24 120 views
2

对于项目,java构建工具“maven”具有standard directory layout。什么是C#项目的目录布局的等效类型?我刚刚学习C#和.NET,似乎IDE只是把所有东西都放到一个目录中,呵呵。 C#/ .NET遵循目录结构的约定吗?C#项目标准目录布局

编辑:这将是一个桌面应用程序(Windows窗体或WPF)。我正在看看其中的一个,但我还不知道究竟是哪一个。最终我想学习两个。

+3

无论您是参考类库,网站项目,Web应用程序项目,Windows窗体项目,WPF解决方案还是其他内容,可能都会很有趣。 – 2011-02-24 06:42:33

+0

您正在使用哪个IDE? Visual Studio绝对不会将所有内容转储到一个目录中。 – 2011-02-24 07:02:42

+0

我正在使用visual studio 2010 ultimate。 '* .cs,* .xsc,* .xsd,* .xss,* .sdf,* .resx'文件全部位于同一级别的项目目录中。这就是我为“头一个C#”(我正在学习C#)这个“迷你”示例项目创建的每个文件。我创建了一个新类,并将它放在与其他所有内容相同的目录中。它看起来像混乱,所以我寻找一些“标准”,没有找到任何东西,并决定在这里问专家。 – jmq 2011-02-24 07:08:48

回答

1

通常你会得到如下的结构在您的项目:

  • /斌/调试(debug版本后)
  • (后发布版本)
  • /斌/释放
  • /OBJ /调试
  • /OBJ /推出
  • /属性(包含的AssemblyInfo.cs +资源文件经由所述组件的属性添加时)
  • /ServiceReferences(包含服务引用,如果任何您的程序集中存在)

  • 除上述之外,您创建的任何解决方案文件夹(通过r-click解决方案资源管理器 - >添加新文件夹)将出现在您的项目中夹。

这有帮助吗?

+0

属性文件夹是您要为项目存储其他配置信息的位置吗?你将在哪里存储你的嵌入式数据库? – jmq 2011-02-25 00:02:16

+0

.config文件通常最终位于程序集的根目录中 - 请务必记住,配置文件需要存在于项目的输出目录中,因此如果您的卫星项目具有各自的配置,那么您很可能会合并这些与你的主要配置文件,它应该工作,至于嵌入式数据库去,在ASP.NET项目的情况下,我认为他们最终在一个名为App_Data的文件夹 – Maciek 2011-02-25 06:17:38

2

在C#目录中布局应该与您拥有的名称空间严格相关。每个目录都创建子名称空间。 Here您可能会发现如何正确命名命名空间的说明。

如果您使用FxCop,它会通知您目录(名称空间)布局是否正常。主要规则是不应该有名称空间只包含几个类/接口(FxCop建议在这种情况下将两个名称空间合并为一个)。

我想这就是我不知道某些特殊项目类型(Uwe在他的评论中提到其中一些)时所能说的一切。