如何使用MSBuild部署ASP.NET MVC应用程序

wgp*_*ubs 23 msbuild asp.net-mvc

我是一个关于msbuild的完整菜鸟,但我鼓励他根据我几天前发布的问题的先前答案来使用它.

无论如何,我正在寻找关于MSBuild入门的一些建议......特别是,使用它来自动部署ASP.NET MVC应用程序.

非常感谢!

Say*_*imi 17

对于Web内容,您应该使用Web部署项目.它是Microsoft免费添加的,它将在您的网站或Web项目(在您的案例中为MVC)上运行aspnet_compiler和aspnet_merge工具.您可以在那里自定义构建,以帮助您准备部署.

关于MSBuild资源入门

  • 当时很好的答案,但MS不再支持VS 2012. (2认同)

Dec*_*r97 5

我直接使用msbuild,跳过nAnt.您可以使用构建文件作为属性来调用它,并从命令行指定目标.这是一个示例soultion.build文件:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <!-- Import the MSBuild Tasks -->
  <Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" />
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <ClassLibraryOutputDirectory>bin$(Configuration)</ClassLibraryOutputDirectory>
    <ProjectDir>.\</ProjectDir >
    <ProjectTestDir>DALTests\</ProjectTestDir >
    <ProjectFile>$(ProjectDir)SSN.sln</ProjectFile >
    <TestProjectFile>$(ProjectTestDir)DALTests.csproj</TestProjectFile >
  </PropertyGroup>

  <!-- Build projects by calling the Project files generated by VS -->
  <Target Name="Build">
    <MSBuild Projects="$(ProjectFile)" />
    <MSBuild Projects="$(TestProjectFile)" />
  </Target>

  <!-- Run Unit tests -->
  <Target Name="Test" DependsOnTargets="Build">
    <CreateItem Include="DALTests\Bin\Debug\DALTests.exe">
      <Output TaskParameter="Include" ItemName="DALTests" />
    </CreateItem>
    <NUnit Assemblies="@(DALTests)" ToolPath="D:\Program Files\NUnit 2.4.5\bin" ContinueOnError="false" OutputXmlFile="SoultionTestResults.xml" />
  </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

我从这样的批处理文件中调用它:(与soultion.build在同一个目录中)

C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe Soultion.Build /Target:Build
Run Code Online (Sandbox Code Playgroud)

您将需要MSBuild社区任务DLL,只需google它.

  • 对不起......你如何将它用于asp.net mvc应用程序? (4认同)