我们可以使用MSBuild构建一个网站吗?

时间:2009-04-30 18:33:18

标签: asp.net msbuild continuous-integration cruisecontrol.net

我对持续整合非常陌生。谁能告诉我们是否可以使用MSbuild建立一个网站?

4 个答案:

答案 0 :(得分:36)

您可以使用AspNetCompiler MSBuild任务构建网站项目。

http://msdn.microsoft.com/en-us/library/ms164291.aspx

您的MSBuild文件可能如下所示:

<Project
        xmlns = "http://schemas.microsoft.com/developer/msbuild/2003"
        DefaultTargets = "PrecompileWeb">
        <Target Name = "PrecompileWeb">
                <AspNetCompiler
                        VirtualPath = "DeployTemp" 
                        PhysicalPath = "C:\ccnet\myProject\WebSite"
                        TargetPath = "C:\ccnet\myProject\PreCompiled"
                        Force = "true"
                        Debug = "true"
                        Updateable = "true"/>
        </Target>
</Project>

然后在ccnet.config中,您将在项目的任务块中添加以下内容:

<msbuild>
    <executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
        <workingDirectory>C:\ccnet\myProject\</workingDirectory>
        <projectFile>C:\ccnet\myProject\myproject.msbuild</projectFile>
        <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>

答案 1 :(得分:5)

如果您有网站的SLN文件,则可以使用以下命令:

  

msbuild YourSolutionFile.sln

答案 2 :(得分:3)

是的,您可以 - 甚至使用“网站”。

您需要做的是添加“Web部署项目”并进行设置,以便从网站获取所有文件,编译它们,并使用WiX之类的东西,您可以为文件创建安装程序能够轻松地将您的网站及其所有文件部署到客户的计算机上。

马克

答案 3 :(得分:-3)

不幸的是,如果你选择“网站”作为项目类型,你就不能。但是,如果选择“Web应用程序”项目类型,则可以使用MSBUILD来构建它。创建“Web应用程序”项目后,可以右键单击它并选择“添加Web部署项目”,它将向您的解决方案添加一个wdproj文件,您可以在其中自定义设置。

您可以将此wdproj文件提供给项目的ccnet配置文件,该文件可以按照配置的计划运行。一旦我在办公室,我可能会在明天之前给你配置在cc.net配置文件中配置的适当节点