2017-05-17 7 views
1

csproj 파일에 관한 질문이 있습니다.csproj에서 와일드 카드를 사용할 때 xaml 파일에 xaml.cs를 중첩하는 방법

큰 원본 소스가 생성되었으므로 팀과 함께 개발할 때 프로젝트 파일의 충돌을 최소화하려고합니다.

나는 다음과 같은 태그를 사용하여 대부분의 충돌을 없애 관리 :

<Compile Include="Services\**\*.cs" /> 
정상 CS 파일에 대한

<Page Include="Entities\**\*.xaml"> 
    <SubType>Designer</SubType> 
    <Generator>MSBuild:Compile</Generator> 
</Page> 

을 XAML과 코드 숨김을 위해.

불행히도, 견고하지만 서투른 .xaml 및 .xaml.cs 쌍의 그룹화가 느슨합니다.

일반 패턴을 만들 수있는 방법이 있습니까? 내가 생성되는 큰 소스 기반을 가지고 같이

답변

2

, 여기에 트릭이 너무 %(Filename) 수, MSBUILD이 Filename (foo.xaml.cs =>foo.xaml) 및 Extension에 경로 (foo.xaml.cs =>.cs)를 분리한다는 것입니다

<Compile Update="**\*.xaml.cs" DependentUpon="%(Filename)" /> 

을 수행 할 수 있습니다 xaml 파일을 참조하는 데 사용됩니다.

+0

정확히 무엇이 필요합니까? – klawusel

0

을 더 - 이동

<Compile Include="MainWindow.xaml.cs"> 
    <DependentUpon>MainWindow.xaml</DependentUpon> 
    <SubType>Code</SubType> 
</Compile> 

은 내가 csproj 자체를 분할 할 수있는 가능성에 대해 알고하지 않습니다하지만이 그래서이 솔루션 다양한 검색을 금지하는 것

csproj 파일을 생성하거나 업데이트 할 수 없습니까?

이것이 내가 99 % 생성 된 어셈블리에 대해 수행하는 작업입니다. 모든 수동 작업을 별도의 폴더에 저장합니다.이 폴더는 생성기에서 열거되고 생성 된 항목 옆에 프로젝트 파일에 추가됩니다. MSBuild에서 15의 ​​정적 업데이트 구문을 사용

+0

분명히 나는 ​​이것을 할 수 있지만, 팀원들이 똑같이 할 때 나는 갈등을 겪는다. – klawusel

+0

일반적으로 순서를 변경하지 않는 한 (너무 균등하게 정렬해야합니다.) 또는 생성 버튼을 다시 누르는 것만으로 (Visual Studio에서 이벤트를 빌드하기 전에) 쉽게 병합 할 수 있습니다. –

+0

일반적인 와일드 카드가 지원되므로 오히려 csproj의 종속성을 수정하는 것보다 두 파일을 보게됩니다 .-)) – klawusel