2014-10-07 2 views
20

나는 프로젝트 파일에 다른 일을 이것을보고 :개인 설정은 MSBuild 프로젝트 파일의 ProjectReference에서 무엇을합니까?

<ProjectReference Include="Foo\Bar\Baz.csproj"> 
    <Project>{A GUID HERE}</Project> 
    <Name>Baz</Name> 
    <Private>False</Private> <!-- ??? --> 
    <ReferenceOutputAssembly>False</ReferenceOutputAssembly> 
</ProjectReference> 
ProjectReference의 모든 노드는 자체 설명은 (참조 된 프로젝트 파일이 GUID는, 이름이 솔루션 탐색기에 표시하는 것으로 나타나고 여부

현재 프로젝트가 Private을 제외한 참조 된 프로젝트에 연결되어야하며 Common MSBuild Project Items 페이지에이 값이 기록되어 있지 않습니다. (이 Reference보다는 ProjectReference 문서화 Private 설정 -하지만 그것은 사실과 거짓되지 Never, AlwaysPreserveNewest 설정가)

이 설정은 무엇입니까를?

+1

<!-- ============================================================ ResolveAssemblyReferences Given the list of assemblies, find the closure of all assemblies that they depend on. These are what we need to copy to the output directory. [IN] @(Reference) - List of assembly references as fusion names. @(_ResolvedProjectReferencePaths) - List of project references produced by projects that this project depends on. The 'Private' attribute on the reference corresponds to the Copy Local flag in IDE. The 'Private' flag can have three possible values: - 'True' means the reference should be Copied Local - 'False' means the reference should not be Copied Local - [Missing] means this task will decide whether to treat this reference as CopyLocal or not. [OUT] @(ReferencePath) - Paths to resolved primary files. @(ReferenceDependencyPaths) - Paths to resolved dependency files. @(_ReferenceRelatedPaths) - Paths to .xmls and .pdbs. @(ReferenceSatellitePaths) - Paths to satellites. @(_ReferenceSerializationAssemblyPaths) - Paths to XML serialization assemblies created by sgen. @(_ReferenceScatterPaths) - Paths to scatter files. @(ReferenceCopyLocalPaths) - Paths to files that should be copied to the local directory. ============================================================ --> 
:이 효과 (전쟁에서 놀람)에 대한 MSDN 문서를 찾을 수는 없지만

, 그것은 행동에서 그것을 적용 Microsoft.Common.CurrentVersion.targets:1620에서 주석에서 분명하다 항목 그룹 (즉, 목록) 및 비공개는 포함 된 항목의 항목 메타 데이터입니다. 귀하의 질문에 대한 답은 어떤 것이 포함되어 있는지에 있습니다. 좀 더 일반적인 용어로, 어떤 유형의 프로젝트입니까? 아마도 csharp로 질문에 태그를 달아보십시오. –

+0

나는 "수입품"을 "포함한다"아닙니다. –

+0

@malexander : 당신이 그걸 삭제를 취소하면 당신의 대답은 좋았다고 생각합니다 ... –

답변

34

Private 태그는 Visual Studio References 폴더의 "로컬 복사"확인란에 대한 사용자 정의를 유지 관리합니다. 이 명령은 GAC에서 참조가 사용되는지 여부 또는 참조 된 어셈블리를 빌드 디렉토리에 복사할지 여부를 제어합니다.

가 가 는 지금까지의 MSBuild에 관한 한, ProjectReference는
관련 문제