2012-10-31 211 views
9

我搜索了很多关于.csproj和.sln。我现在知道的是.Csproj文件包含info ab项目和.sln文件包含解决方案中所有项目的信息。.CSProj和.Sln文件的用途是什么?

我的问题是什么信息他们包含任何实际的例子将真正帮助。

而且下面的说法也正确吗?

我们在Web应用程序中有.csproj不在网站中?

感谢

+14

用记事本打开它们,你会看到:) – Habib

+2

.csproject适用于单个项目。将项目添加到.csproject文件中后,您所做的任何更改。 .sln文件是解决方案文件,它可能包含多个项目。 –

+0

看到我编辑的答案关于您的问题关于网站与Web项目。 – Mzn

回答

7

哈比卜说,什么是你做的最好的事情。当您打开的csproj或SLN文件,你会发现有很多信息

  1. 如何建立一个项目及其设置的XML文件(存储为文本)。
  2. 该项目引用的程序集。
  3. MSBuild信息和命令:MSBuild是一个框架,允许开发人员使用他们在MSBuild文件中指定的命令(如项目文件本身)来自定义构建过程。例如,如果您希望项目在您每次构建时以自定义方式处理文件,则可以使用MSBuild,并将其放入CSProject文件中。

一个Web项目有一个参考,也可以有自定义生成操作,这就是为什么应该有它的项目文件。此外,这样的项目包含文件,项目文件列出了这些文件以及如何构建/编译它们。这与其他IDE中的基于文件的项目不同,在Visual Studio中,您可以在项目文件夹中具有文件,该文件不是而是属于该项目。

关于你提到的有关网站和Web项目的问题在这里是一个链接约Web Application Projects versus Web Site Projects in Visual Studio和关于在一个网站的哪些文件包含(即有一个项目文件),它说:

对于网页站点项目中,文件夹结构中的所有文件都被自动视为包含在网站中。如果要从编译中排除某些内容,则必须从网站项目文件夹中删除该文件,或将其文件扩展名更改为未编译且不由IIS提供的扩展名。

+0

下面是关于MSBuild的更多信息:http://msdn.microsoft.com/en-us/library/0k6kkbsd.aspx,告诉我们您是否需要更多信息。 – Mzn