2009-04-30 102 views

回答

35

您可以使用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> 
+0

這很有效。我將它與一些在IIS中設置Web應用程序以自動部署的任務相結合。 – Min 2009-04-30 19:31:43

+0

對於現代靜態內容網站項目,您還會推薦這種方法嗎? – julealgon 2018-02-12 12:35:26

-3

不幸的是,如果您選擇了「網站」作爲您無法使用的項目類型。但是,如果您選擇「Web應用程序」項目類型,則可以使用MSBUILD來構建它。一旦創建了「web應用程序」項目,您可以右鍵單擊它並選擇「添加Web部署項目」,將添加一個wdproj文件到您的解決方案,您可以在其中自定義設置。

您可以將此wdproj文件提供給ccnet配置文件,以便可以按照配置的計劃運行此項目。我可以給你一個合適的節點,在明天一旦我在辦公室時,我需要在cc.net配置文件中配置合適的節點。

3

是的,你甚至可以使用「網站」。

你需要做的就是添加「Web部署項目」並設置它,以便從網站獲取所有文件,編譯它們,並使用類似WiX的東西,可以創建一個安裝程序能夠輕鬆地將您的網站及其所需的所有文件部署到客戶的計算機上。

Marc

+0

您也可以下載網絡部署項目的Visual Studio 2008的位置: http://www.microsoft.com/downloads/details.aspx?familyId=0AA30AE8-C73B -4BDD-BB1B-FE697256C459&displaylang = en for Visual Studio 2005請到這裏: http://msdn.microsoft.com/en-us/asp.net/aa336619.aspx – lexx 2009-05-14 11:47:21

4

如果您有網站的SLN文件,那麼您可以使用以下命令:

的MSBuild YourSolutionFile.sln

相關問題