2013-12-13 4 views
0

웹 개발 프로젝트를 사용하지 않고 ASP.net 웹 응용 프로그램 프로젝트에서 변경된 파일 만 복사하는 방법은 웹 개발 프로젝트에 있습니까?웹 개발 프로젝트없이 ASP.net 웹 응용 프로그램 빌드 프로젝트 대상

내 흐름은 다음과 같습니다. 1. 올바른 순서로 파일을 변경/업데이트 한 응용 프로그램 만 컴파일합니다 (즉, 웹 응용 프로그램이 라이브러리에 의존하기 때문에 웹 응용 프로그램보다 먼저 라이브러리 프로젝트를 컴파일합니다). 2.) 변경된 파일 만 Release 폴더에 복사하십시오. 3.) 웹 개발 프로젝트 대상을 사용하지 않고이 작업을하고 싶습니다. 내 웹 개발 프로젝트 구성 파일은 다음과 같습니다

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
<PropertyGroup> 
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> 
    <ProductVersion>10.0.30319</ProductVersion> 
    <SchemaVersion>2.0</SchemaVersion> 
    <ProjectGuid>{399DEB82-5D44-466C-ADD5-D76F85A519D8}</ProjectGuid> 
    <SourceWebPhysicalPath>..\Tracker_Web</SourceWebPhysicalPath> 
    <SourceWebProject>{A2536EFD-8583-4C35-8F18-21F61DA861C3}|Tracker_Web\Tracker_Web.csproj</SourceWebProject> 
    <SourceWebVirtualPath>/Tracker_Web.csproj</SourceWebVirtualPath> 
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion> 
</PropertyGroup> 
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
    <DebugSymbols>true</DebugSymbols> 
    <OutputPath>.\Debug</OutputPath> 
    <EnableUpdateable>true</EnableUpdateable> 
    <UseMerge>true</UseMerge> 
    <SingleAssemblyName>Tracker_Web_Deploy</SingleAssemblyName> 
</PropertyGroup> 
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    <DebugSymbols>false</DebugSymbols> 
    <OutputPath>.\Release</OutputPath> 
    <EnableUpdateable>true</EnableUpdateable> 
    <UseMerge>true</UseMerge> 
    <SingleAssemblyName>Tracker_Web_Deploy</SingleAssemblyName> 
    <DeleteAppDataFolder>true</DeleteAppDataFolder> 
</PropertyGroup> 
<ItemGroup> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\obj\**\*.*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\Properties\**\*.*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\*.csproj*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\*.resx" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\*.sln" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\_svn\**\*.*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\.svn\**\*.*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\App_Data\**\*.*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\bin\**\*.pdb" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\bin\**\*.xml" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\bin\Tracker_Web_Deploy.*" /> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\Exception*.aspx*" /> 
    <ProjectReference Include="..\Tracker_Web\Tracker_Web.csproj"> 
     <Project>{A2536EFD-8583-4C35-8F18-21F61DA861C3}</Project> 
     <Name>Tracker_Web</Name> 
    </ProjectReference> 
</ItemGroup> 
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WebDeployment\v10.0\Microsoft.WebDeployment.targets" /> 
<Target Name="BeforeBuild"> 
</Target> 
<Target Name="BeforeMerge"> 
</Target> 
<Target Name="AfterMerge"> 
</Target> 
<Target Name="AfterBuild"> 
    <MakeDir Directories="$(OutputPath)\App_Data" /> 
    <RemoveDir Directories=".\Source" /> 
    <Message Text="Delete File: $(SourceWebPhysicalPath)\bin\Tracker_Web_Deploy.dll" Importance="high" /> 
    <Exec Command="del /F /Q $(SourceWebPhysicalPath)\bin\Tracker_Web_Deploy.dll" /> 
</Target> 

내가이 사용 MSBuild에서 작업을 수행하는 방법을 보았다,하지만 웹 개발 프로젝트와. 어떤 도움이라도 대단히 감사하겠습니다.

답변

0

VS2010을 사용하는 경우 최신 Azure SDK 릴리스에 포함 된 더 나은 게시 마법사가 있습니다. 자세한 내용은 here을 참조하십시오. 웹 배포 프로젝트의 대부분의 기능을 웹 응용 프로그램 프로젝트 자체로 가져옵니다. 기본적으로 게시 경험은 점진적입니다. 마지막 게시 이후 변경된 파일 만 게시합니다.

웹 배포 프로젝트는 VS2012부터 사용되지 않으므로 어쨌든 VS 버전을 업데이트 할 때마다 새 마법사가 사용됩니다.

관련 문제