자 이제 저는 스스로 승진하는 것에 대해 눈살을 찌푸리게됩니다. 그러나이 경우에는 질문과 관련이있는 것처럼 들리 겠지만 나는 이것에서 아무 것도 얻지 못하길 바랍니다.
최근 내가 여러 환경/기계 타겟으로하는 방법에 대한 블로그 게시물의 몇 썼다 :
Targeting multiple environments and machines - part 1/2
Targeting multiple environments and machines – part 2/2
내가 알고있는 것처럼를,이 경우 문제는, 당신을 어떻게 어떤 파일이 어떤 고객/환경에 속하는지 수동으로 파악할 필요없이 올바른 파일 세트를 자동으로 빌드합니다. 블로그 게시물에서 내가 제안한 솔루션은 nAnt과 함께 일부 확장 기능이 위에 표시되어 있음을 나타냅니다. nAnt는 빌드 도구 인 Ant의 .NET 버전입니다. xml 파일에는 특정 입력 파일 세트가 주어 지므로 고객 별 web.config 파일을 생성 할 수 있습니다. 의 CUSTOMERNAME 키에 대한 값을 지정하는 대신
<appSettings>
<add key="CustomerName" value="${CustomerName}"/>
</appSettings>
을 : web.config 파일의 다음 appSetting 섹션에서
, 당신은 각 고객의 CUSTOMERNAME 키에 대해 다른 값을 지정하고 싶은 말은 CustomerName이라는 속성을 정의하십시오. 이제, 우리는 NANT를 사용하는 가정, 다음과 같은 내용으로 다른 고객의 특정 파일을 만듭니다
<?xml version="1.0" encoding="utf-8"?>
<target xmlns="http://nant.sf.net/release/0.86-beta1/nant.xsd">
<property name="CustomerName" value="Acme Incorporated"/>
</target>
NANT는 당신을 위해 고객/환경에게 특정 파일을 만들이 두 파일을 병합 자동으로 할 수 있습니다.
해결 방법을 통해 웹과 같은 환경 및 컴퓨터 특정 파일을 자동으로 빌드 할 수 있습니다.config 파일뿐만 아니라 라이센스 파일이나 라이브러리와 같은 정적 파일을 출력 할 수 있습니다.이 파일은 모두 대상 환경/시스템에 따라 다릅니다. 또한 Visual Studio 2010 솔루션 샘플을 제공합니다.이 솔루션은 수행 방법에 대한 매우 기본적인 예제를 보여줍니다. download here.
물론 nAnt을 살펴볼 수도 있지만 내 솔루션을 사용하는 옵션을 제공 할 것이라고 생각했습니다. 당신이에 읽고 싶은 경우
protected readonly static string XML_PATH =
#if DEBUG
@"Resources/xml/Description.xml";
#else
@"Resources/xml/Description2.xml";
#endif
: (! : 그것은 지저분한 및 설정 파일을 관리하지 않을 권리 방법주의) 당신은 조건부 컴파일을 사용할 수
: 당신의 공식화 질문을 바탕으로
xml 파일이 만들어 졌습니까? 정확하게 무슨 뜻입니까? –
아니요 XML이 작성되지 않았으며 일부 설명 만 포함되어 있습니다. 이 설명은 고객마다 다르며 다른 구성에 따라 어떤 파일이 사용되는지 확인할 수 있기를 원합니다. – Keller