이 문서는 수동으로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오. |
번역
원본
|
방법: 프로젝트 파일에서 배포 설정 편집
Visual Studio 웹 응용 프로그램 프로젝트에서 웹 배포 패키지가 만들어지는 방식이나 One-Click 게시의 작동 방식에 대한 모든 설정을 Visual Studio UI로 지정할 수 있는 것은 아닙니다. Visual Studio에서 해당 UI가 제공되지 않는 설정을 변경하려면 프로젝트 파일에서 설정을 변경해야 합니다. 이 항목에서는 이를 수행하는 방법에 대해 설명합니다.
이 항목에서는 변경할 수 있는 모든 설정을 열거하는 것은 아니며 새 프로젝트를 열 때마다 적용되는 기본값을 설정하는 방법에 대해서도 설명하지 않습니다. 사용 가능한 옵션은 다른 ASP.NET 배포 항목에서 설명하며 해당 항목에서는 이러한 옵션을 변경하는 방법을 설명하는 지침이 있는 위치로 이 항목에 대한 링크를 제공합니다. 자세한 내용은 ASP.NET 배포 콘텐츠 맵을 참조하십시오.
MSBuild에 익숙한 사용자는 웹 게시에 사용되는 .targets 파일에서 기본값을 설정할 수 있습니다. 이러한 파일은 다음 폴더에 있습니다.
%Program Files%\MSBuild\Microsoft\VisualStudio\v10.0\Web
MSBuild에 대한 자세한 내용은 MSBuild 참조를 참조하십시오.
다음 절차는 프로젝트 파일을 편집하는 방법과 변경해야 하는 XML 요소를 찾는 방법을 설명합니다.
프로젝트 파일을 열고 편집하려면
-
다음 방법 중 하나를 사용하여 프로젝트의 .project 파일(확장명이 .csproj 또는 .vbproj인 파일)을 엽니다.
-
프로젝트가 솔루션에 포함되어 있고 Visual Studio에서 해당 프로젝트를 연 경우에는 솔루션 탐색기에서 프로젝트 이름을 마우스 오른쪽 단추로 클릭하고 프로젝트 언로드를 선택한 다음 다시 프로젝트를 마우스 오른쪽 단추로 클릭하고 편집을 선택합니다. 하나의 프로젝트만 포함된 솔루션에서 이 방법을 사용하려면 솔루션 항상 표시 옵션이 선택되어 있어야 합니다. 도구 메뉴에서 선택할 수 있는 옵션 대화 상자의 프로젝트 및 솔루션 섹션에서 이 옵션을 찾을 수 있습니다.
-
Windows 탐색기를 사용하여 프로젝트 디렉터리로 이동한 다음 메모장이나 다른 텍스트 편집기를 사용하여 .csproj 또는 .vbproj 파일을 엽니다. 속성 창의 프로젝트 폴더 필드에서 프로젝트 폴더의 경로를 찾을 수 있습니다.
-
-
설정을 입력하고 있는 빌드 구성과 관련된 PropertyGroup 요소를 찾습니다.
예를 들어 Debug 빌드 구성에 대한 설정을 만들고 있으면 다음과 같은 여는 태그가 있는 PropertyGroup 요소를 찾습니다.
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-
구성할 설정이 데이터베이스 배포와 관련이 없는 경우 PropertyGroup 요소 아래에 새 요소를 추가합니다.
예를 들어 다음 PropertyGroup 요소를 찾는다고 가정합니다.
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <DebugType>pdbonly</DebugType> <Optimize>true</Optimize> <OutputPath>bin\</OutputPath> <DefineConstants>TRACE</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <!-- Other settings --> </PropertyGroup>
패키지가 만들어지는 기본 위치를 변경하려면 다음 그림과 같이 IntermediateOutputPath 요소를 추가합니다.
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <IntermediateOutputPath>C:\TEMP\</IntermediateOutputPath> <DebugType>pdbonly</DebugType> <Optimize>true</Optimize> <OutputPath>bin\</OutputPath> <DefineConstants>TRACE</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <!-- Other settings --> </PropertyGroup>
-
데이터베이스 배포와 관련된 설정을 구성하려면 다음 단계를 수행합니다.
-
PropertyGroup 요소 내에서 변경할 PublishDatabaseSettings 요소를 찾습니다.
PublishDatabaseSettings 요소는 다음 예제와 유사합니다.
<PublishDatabaseSettings> <Objects> <ObjectGroup Name="ApplicationServices-Deployment" Order="1"> <Destination Path="" /> <Object Type="dbFullSql"> <PreSource Path="..." ScriptSchema="True" ScriptData="False" CopyAllFullTextCatalogs="False" /> <Source Path="..." Transacted="True" /> </Object> </ObjectGroup> </Objects> </PublishDatabaseSettings> -
PublishDatabaseSettings 요소에서 구성할 데이터베이스에 해당하는 ObjectGroup 요소를 찾습니다.
SQL 패키지 및 게시 탭의 데이터베이스 항목 표에서 입력한 각 줄에 대해 ObjectGroup 요소가 나타납니다. ObjectGroup 요소의 이름은 데이터베이스 항목 표의 이름입니다.
-
ObjectGroup 요소에서 구성할 스크립트에 해당하는 Object 요소를 찾습니다.
각 데이터베이스 스크립트마다 하나의 Object 요소가 있습니다. 위 예제에서 Object 요소는 자동으로 생성된 배포 스크립트를 나타냅니다. 사용자 지정 스크립트를 추가하면 각 사용자 지정 스크립트에 대한 추가 Object 요소가 있게 됩니다.
Object 요소 내에는 Source 및 PreSource 요소가 있습니다. 프로젝트 파일에서 구성할 수 있는 대부분의 데이터베이스 설정에서는 이러한 요소의 특성을 설정해야 합니다.
-
Source 또는 PreSource 요소의 특성을 설정하여 데이터베이스 배포를 구성합니다.
예를 들어 자동으로 생성된 스크립트에 개체를 만드는 문보다 먼저 실행되는 SQL Drop 문이 각 데이터베이스 개체에 대해 포함되도록 위 예제를 변경할 수도 있습니다. 이렇게 하려면 다음 예제와 같이 PreSource 요소에 ScriptDropsFirst 특성을 추가합니다.
<PublishDatabaseSettings> <Objects> <ObjectGroup Name="ApplicationServices-Deployment" Order="1"> <Destination Path="" /> <Object Type="dbFullSql"> <PreSource Path="..." ScriptSchema="True" ScriptData="False" ScriptDropsFirst="True" CopyAllFullTextCatalogs="False" />s <Source Path="..." Transacted="True" /> </Object> </ObjectGroup> </Objects> </PublishDatabaseSettings>
-
-
변경 내용을 저장하고 프로젝트 파일을 닫습니다.
-
프로젝트를 언로드하여 프로젝트 파일을 편집한 경우에는 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 프로젝트 다시 로드를 선택합니다.
-
빌드 메뉴에서 ProjectName정리를 선택합니다.