183 instantiations of ProjectReference
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (10)
CodeActions\SyncNamespace\CSharpSyncNamespaceTestsBase.cs (2)
147references.Add(new ProjectReference(project.Id)); 149workspace.OnProjectReferenceAdded(dependentProject.Id, new ProjectReference(project.Id));
Workspaces\WorkspaceTests_EditorFeatures.cs (8)
266Assert.Throws<ArgumentException>(() => workspace.OnProjectReferenceAdded(project1.Id, new ProjectReference(project2.Id))); 281var reference = new ProjectReference(project2.Id); 303workspace.OnProjectReferenceAdded(project1.Id, new ProjectReference(project2.Id)); 305Assert.Throws<ArgumentException>(() => workspace.OnProjectReferenceAdded(project1.Id, new ProjectReference(project2.Id))); 320workspace.OnProjectReferenceAdded(project1.Id, new ProjectReference(project2.Id)); 321workspace.OnProjectReferenceRemoved(project1.Id, new ProjectReference(project2.Id)); 342workspace.OnProjectReferenceAdded(project1.Id, new ProjectReference(project2.Id)); 344Assert.Throws<ArgumentException>(() => workspace.OnProjectReferenceAdded(project2.Id, new ProjectReference(project1.Id)));
Microsoft.CodeAnalysis.EditorFeatures (1)
Interactive\InteractiveSession.cs (1)
323solution = solution.AddProjectReference(newSubmissionProjectId, new ProjectReference(previousSubmissionProjectId));
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (1)
SymbolFinder\SymbolFinderTests.cs (1)
40projectReferences: projectReferences.Select(p => new ProjectReference(p)),
Microsoft.CodeAnalysis.ExternalAccess.HotReload (1)
Api\HotReloadMSBuildWorkspace.cs (1)
129return new(
Microsoft.CodeAnalysis.Features (3)
AddImport\CodeActions\ProjectSymbolReferenceCodeAction.cs (1)
45var projectWithAddedReference = project.AddProjectReference(new ProjectReference(FixData.ProjectReferenceToAdd));
AddMissingReference\AddMissingReferenceCodeAction.cs (1)
63new ProjectReference(candidateProjectId), missingAssemblyIdentity);
GenerateType\AbstractGenerateTypeService.Editor.cs (1)
378updatedSolution = updatedSolution.AddProjectReference(triggeringProject.Id, new ProjectReference(projectToBeUpdated.Id));
Microsoft.CodeAnalysis.Features.UnitTests (60)
EditAndContinue\EditAndContinueWorkspaceServiceTests.cs (4)
2617var solution2 = solution1.AddProjectReferences(projectBId, [new ProjectReference(projectAId)]); 2621var solution3 = solution2.WithProjectReferences(projectBId, [new ProjectReference(projectAId, aliases: ["A"])]); 2651.AddProjectReference(projectAId, new ProjectReference(projectBId)); 2692solution = solution.AddProjectReference(projectAId, new ProjectReference(projectBId));
EditAndContinue\EmitSolutionUpdateResultsTests.cs (56)
168.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 169.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 192.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 193.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 218.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 219.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 249.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 250.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 276.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 277.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 310.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 311.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 338.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 339.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 362.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 363.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 392.AddTestProject("P0", out var p0).AddProjectReferences([new(q)]).Solution 393.AddTestProject("P1", out var p1).AddProjectReferences([new(q)]).Solution 395.AddTestProject("R0", out var r0).AddProjectReferences([new(p0)]).Solution 396.AddTestProject("R1", out var r1).AddProjectReferences([new(p1), new(p0)]).Solution 397.AddTestProject("R2", out var r2).AddProjectReferences([new(p2), new(p0)]).Solution; 433.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 434.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 464.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 465.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 495.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 496.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 521.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 522.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution 523.AddTestProject("E", out var e).AddProjectReferences([new(b)]).Solution; 554.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 555.AddTestProject("B", out var b).AddProjectReferences([new(d)]).Solution; 579.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 580.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 615.AddTestProject("R1", out var r1).AddProjectReferences([new(p1), new(p2)]).Solution 616.AddTestProject("R2", out var r2).AddProjectReferences([new(p2), new(p3)]).Solution 617.AddTestProject("R3", out var r3).AddProjectReferences([new(p3), new(p4)]).Solution 618.AddTestProject("R4", out var r4).AddProjectReferences([new(p4)]).Solution;
Microsoft.CodeAnalysis.Workspaces (4)
Serialization\SerializerService_Asset.cs (1)
82return new ProjectReference(projectId, aliases.ToImmutableArrayOrEmpty(), embedInteropTypes);
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (2)
574var projectReference = new ProjectReference(projectIdToReference, peReference.Properties.Aliases, peReference.Properties.EmbedInteropTypes); 713projectReference = new ProjectReference(
Workspace\Workspace.cs (1)
1475var newProjRef = new ProjectReference(matchingProjectId, pemeta.Properties.Aliases, pemeta.Properties.EmbedInteropTypes);
Microsoft.CodeAnalysis.Workspaces.MSBuild (1)
MSBuild\MSBuildProjectLoader.Worker_ResolveReferences.cs (1)
368var newReference = new ProjectReference(to, aliases);
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (3)
Workspaces\TestHostProject`1.cs (1)
152ProjectReferences = projectReferences != null ? projectReferences.Select(p => new ProjectReference(p.Id)) : SpecializedCollections.EmptyEnumerable<ProjectReference>();
Workspaces\TestWorkspace`1.cs (2)
669OnProjectReferenceAdded(fromProject.Id, new ProjectReference(toProject.Id, aliases.Any() ? aliases : default)); 684OnProjectReferenceAdded(submissions[i].Id, new ProjectReference(submissions[j].Id));
Microsoft.CodeAnalysis.Workspaces.UnitTests (69)
FindAllDeclarationsTests.cs (1)
173.AddProjectReference(submission1Id, new ProjectReference(submission0Id))
FindReferencesTests.cs (2)
39projectReferences: projectReferences.Select(p => new ProjectReference(p))); 55projectReferences: projectReferences.Select(p => new ProjectReference(p)));
SolutionTests\ProjectDependencyGraphTests.cs (4)
228dependencyGraph = dependencyGraph.WithAdditionalProjectReferences(projectAId, [new ProjectReference(projectBId)]); 247projectReferences: [new ProjectReference(projectBId)]); 724references.Add(new ProjectReference(solution.GetProjectsByName(targetProject).Single().Id)); 728references.Add(new ProjectReference(solution.GetProjectsByName(targetProject).Single().Id, [$"alias{references.Count}"]));
SolutionTests\ProjectInfoTests.cs (3)
51var projectReference = new ProjectReference(ProjectId.CreateNewId()); 112var projectReference = new ProjectReference(ProjectId.CreateNewId()); 204SolutionTestHelpers.TestListProperty(instance, (old, value) => old.WithProjectReferences(value), opt => opt.ProjectReferences, new ProjectReference(projectId), allowDuplicates: false);
SolutionTests\SolutionTests.cs (52)
1173var projectReference = new ProjectReference(projectId2); 1980var projectRef = new ProjectReference(projectId2); 1989new ProjectReference(projectId2), 1990new ProjectReference(projectId2, ImmutableArray.Create("alias")), 1991new ProjectReference(projectId2, embedInteropTypes: true)); 2000Assert.Throws<InvalidOperationException>(() => solution2.WithProjectReferences(projectId2, [new ProjectReference(projectId)])); 2001Assert.Throws<InvalidOperationException>(() => solution.WithProjectReferences(projectId, [new ProjectReference(projectId)])); 2010var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2033var projectRef2 = new ProjectReference(projectId2); 2034var projectRef3 = new ProjectReference(projectId3); 2035var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2052Assert.Throws<ArgumentException>("projectReferences[1]", () => solution.AddProjectReferences(projectId, [new ProjectReference(projectId2), new ProjectReference(projectId2)])); 2059Assert.Throws<InvalidOperationException>(() => solution3.AddProjectReferences(projectId, [new ProjectReference(projectId)])); 2071var projectRef2 = new ProjectReference(projectId2); 2072var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2091Assert.Throws<ArgumentException>("projectReference", () => solution.RemoveProjectReference(projectId, new ProjectReference(ProjectId.CreateNewId()))); 2113.AddProjectReference(submissionId2, new ProjectReference(submissionId1)) 2114.WithProjectReferences(submissionId2, [new ProjectReference(submissionId1)]); 2117_ = solution.AddProjectReferences(submissionId3, [new ProjectReference(submissionId1)]); 2118_ = solution.WithProjectReferences(submissionId3, [new ProjectReference(submissionId1)]); 2121_ = solution.AddProjectReferences(submissionId3, [new ProjectReference(projectId0)]); 2122_ = solution.WithProjectReferences(submissionId3, [new ProjectReference(projectId0)]); 2125Assert.Throws<InvalidOperationException>(() => solution.AddProjectReferences(submissionId2, [new ProjectReference(submissionId3)])); 2126Assert.Throws<InvalidOperationException>(() => solution.WithProjectReferences(submissionId1, [new ProjectReference(submissionId2), new ProjectReference(submissionId3)])); 2129Assert.Throws<InvalidOperationException>(() => solution.AddProjectReferences(projectId0, [new ProjectReference(submissionId1)])); 2130Assert.Throws<InvalidOperationException>(() => solution.WithProjectReferences(projectId0, [new ProjectReference(submissionId1)])); 3002.AddProjectReference(pm2, new ProjectReference(pm1)) 3024.AddProjectReference(pm2, new ProjectReference(pm1)) 3126solution = solution.AddProjectReference(projectIds[i], new ProjectReference(projectIds[i - 1])); 3278.AddProjectReference(pid2, new ProjectReference(pid)); 3304.AddProjectReference(pid2, new ProjectReference(pid)); 4169.AddProjectReference(pid3, new ProjectReference(pid1)) 4170.AddProjectReference(pid3, new ProjectReference(pid2)); 4244projectReferences: [new ProjectReference(project1.Id)])); 4274projectReferences: [new ProjectReference(project1.Id)])); 4450projectReferences: [new ProjectReference(project1.Id)])); 5184projects.Add(ProjectInfo.Create(projectId1, VersionStamp.Default, "Test1", "Test1", LanguageNames.CSharp, projectReferences: [new ProjectReference(projectId2)])); 5213projects.Add(ProjectInfo.Create(projectId2, VersionStamp.Default, "Test2", "Test2", LanguageNames.CSharp, projectReferences: [new ProjectReference(projectId1)])); 5268solution = solution.AddProject(ProjectInfo.Create(projectId1, VersionStamp.Default, "Test1", "Test1", LanguageNames.CSharp, projectReferences: [new ProjectReference(projectId2)])); 5300projectReferences: [new ProjectReference(projectId2), new ProjectReference(projectId3)])); 5357projectReferences: [new ProjectReference(projectId2), new ProjectReference(projectId3)])); 5553projectReferences: [new ProjectReference(csBrokenProject.Id), new ProjectReference(vbNormalProject.Id)], 5567projectReferences: [new ProjectReference(vbNormalProject.Id)], 5581projectReferences: [new ProjectReference(dependsOnBrokenProject.Id)])); 5591projectReferences: [new ProjectReference(dependsOnVbNormalProject.Id)])); 5860project2 = project2.AddProjectReference(new(project1.Id)); 5890project2 = project2.AddProjectReference(new(project1.Id));
SolutionTests\SolutionWithSourceGeneratorTests.cs (2)
427.AddProjectReference(projectIdWithReference, new ProjectReference(projectIdWithGenerator)); 665new ProjectReference(projectIdWithGenerator)).Solution;
WorkspaceTests\AdhocWorkspaceTests.cs (2)
124projectReferences: [new ProjectReference(id1)]); 603.AddProjectReference(new ProjectReference(csProj.Id));
WorkspaceTests\WorkspaceReferenceTests.cs (3)
65projectReferences: [new ProjectReference(referenceInfo.Id)], 105projectReferences: [new ProjectReference(referenceInfo.Id)], 145projectReferences: [new ProjectReference(referenceInfo.Id)],
Microsoft.ML.CodeAnalyzer.Tests (1)
Code\BestFriendTest.cs (1)
74solution = solution.AddProjectReference(projectId, new ProjectReference(projectA.Id));
Microsoft.VisualStudio.LanguageServices (2)
ProjectSystem\VisualStudioWorkspaceImpl.AddProjectReferenceUndoUnit.cs (1)
36var updatedProject = fromProject.AddProjectReference(new ProjectReference(_toProjectId));
ProjectSystem\VisualStudioWorkspaceImpl.RemoveProjectReferenceUndoUnit.cs (1)
36var updatedProject = fromProject.RemoveProjectReference(new ProjectReference(_toProjectId));
Microsoft.VisualStudio.LanguageServices.CSharp (3)
ProjectSystemShim\CSharpProjectShim.ICSharpVenusProjectSite.cs (3)
33ProjectSystemProject.RemoveProjectReference(new ProjectReference(projectSite.ProjectSystemProject.Id)); 49ProjectSystemProject.AddProjectReference(new ProjectReference(existingProjectReference.ProjectId, ImmutableArray.Create(currentAliases), existingProjectReference.EmbedInteropTypes)); 57ProjectSystemProject.AddProjectReference(new ProjectReference(projectSite.ProjectSystemProject.Id, embedInteropTypes: optionID == CompilerOptions.OPTID_IMPORTSUSINGNOPIA));
Microsoft.VisualStudio.LanguageServices.Implementation (1)
ProjectSystem\CPS\CPSProject_IWorkspaceProjectContext.cs (1)
215_projectSystemProject.AddProjectReference(new ProjectReference(otherProjectId, properties.Aliases, properties.EmbedInteropTypes));
Roslyn.VisualStudio.Next.UnitTests (23)
Remote\SnapshotSerializationTests.cs (1)
57.AddProjectReference(new ProjectReference(project2.Id, ["test"]))
Services\ServiceHubServicesTests.cs (11)
315return solution.AddProjectReference(projectId1, new ProjectReference(projectId2)); 334solution = solution.RemoveProjectReference(projectId1, new ProjectReference(projectId2)); 335return solution.AddProjectReference(projectId2, new ProjectReference(projectId1)); 348solution = solution.RemoveProjectReference(projectId2, new ProjectReference(projectId1)); 349return solution.AddProjectReference(projectId1, new ProjectReference(projectId2)); 376projectReferences: [new ProjectReference(p2)]), 1111.AddProjectReference(new(projectId1)); 1164.AddProjectReference(new(projectId1)); 1217.AddProjectReference(new(projectId1)); 1262.AddProjectReference(new(projectId1)); 2184solution = current.AddProjectReference(new ProjectReference(p2pReferences[i])).Solution;
Services\SolutionServiceTests.cs (11)
625solution = project3.Solution.AddProjectReference(project3.Id, new(project3.Solution.Projects.Single(p => p.Name == "P2").Id)); 658solution = project3.Solution.AddProjectReference(project3.Id, new(project3.Solution.Projects.Single(p => p.Name == "P2").Id)); 697solution = project3.Solution.AddProjectReference(project3.Id, new(project3.Solution.Projects.Single(p => p.Name == "P2").Id)); 736solution = project3.Solution.AddProjectReference(project3.Id, new(project2.Id)) 737.AddProjectReference(project2.Id, new(project1.Id)); 776solution = project3.Solution.AddProjectReference(project3.Id, new(project2.Id)) 777.AddProjectReference(project2.Id, new(project1.Id)); 816solution = project3.Solution.AddProjectReference(project3.Id, new(project2.Id)) 817.AddProjectReference(project3.Id, new(project1.Id)); 925solution = solution.GetProject(project1.Id).AddProjectReference(new ProjectReference(project2.Id)).Solution; 957project1 = project1.AddProjectReference(new ProjectReference(ProjectId.CreateNewId()));
161 references to ProjectReference
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (1)
Workspaces\WorkspaceTests_EditorFeatures.cs (1)
281var reference = new ProjectReference(project2.Id);
Microsoft.CodeAnalysis.EditorFeatures (4)
Preview\AbstractPreviewFactoryService.cs (4)
170foreach (var projectReference in projectChanges.GetAddedProjectReferences()) 177foreach (var projectReference in projectChanges.GetRemovedProjectReferences()) 237var oldProjectReference = oldProjectReferences[projectId]; 238var newProjectReference = newProjectReferences[projectId];
Microsoft.CodeAnalysis.ExternalAccess.HotReload (2)
Api\HotReloadMSBuildWorkspace.cs (2)
125ProjectReference MapProjectReference(ProjectReference pr)
Microsoft.CodeAnalysis.Features (2)
AddMissingReference\AddMissingReferenceCodeAction.cs (2)
15internal sealed class AddMissingReferenceCodeAction(Project project, string title, ProjectReference? projectReferenceToAdd, AssemblyIdentity missingAssemblyIdentity) : CodeAction 18private readonly ProjectReference? _projectReferenceToAdd = projectReferenceToAdd;
Microsoft.CodeAnalysis.Remote.ServiceHub (2)
Host\AssetProvider.cs (1)
201tasks.Add(SynchronizeProjectAssetCollectionAsync<ProjectReference>(new(AssetPathKind.ProjectProjectReferences, projectId), static p => p.ProjectReferences));
Host\RemoteWorkspace.SolutionCreator.cs (1)
361project = project.WithProjectReferences(await _assetProvider.GetAssetsArrayAsync<ProjectReference>(
Microsoft.CodeAnalysis.Remote.Workspaces (1)
AbstractAssetProvider.cs (1)
89var projectReferencesTask = this.GetAssetsArrayAsync<ProjectReference>(new(AssetPathKind.ProjectProjectReferences, projectId), projectChecksums.ProjectReferences, cancellationToken);
Microsoft.CodeAnalysis.Workspaces (86)
Diagnostics\Extensions.cs (1)
385foreach (var projectRef in project.ProjectReferences.OrderBy(r => r.ProjectId.Id))
FindSymbols\Declarations\DeclarationFinder_AllDeclarations.cs (1)
95foreach (var projectReference in project.ProjectReferences)
Serialization\SerializationExtensions.cs (1)
26ProjectReference => WellKnownSynchronizationKind.ProjectReference,
Serialization\SerializerService.cs (1)
120SerializeProjectReference((ProjectReference)value, writer);
Serialization\SerializerService_Asset.cs (2)
67private static void SerializeProjectReference(ProjectReference reference, ObjectWriter writer) 74private static ProjectReference DeserializeProjectReference(ObjectReader reader, CancellationToken cancellationToken)
Workspace\ProjectSystem\ProjectSystemProject.cs (13)
54private readonly List<ProjectReference> _projectReferencesAddedInBatch = []; 55private readonly List<ProjectReference> _projectReferencesRemovedInBatch = []; 688projectUpdateState = TryRemoveConvertedProjectReference_NoLock(projectId, path, properties, projectUpdateState, out var projectReference); 714var projectReferencesCreated = new List<ProjectReference>(); 719projectBeforeMutation.State, path, properties, projectUpdateState, solutionChanges.Solution, out var projectReference); 748List<ProjectReference> projectReferencesRemovedInBatch, 749List<ProjectReference> projectReferencesAddedInBatch) 756foreach (var projectReference in projectReferencesRemovedInBatch) 1283public void AddProjectReference(ProjectReference projectReference) 1300public bool ContainsProjectReference(ProjectReference projectReference) 1311private bool ContainsProjectReference_NoLock(ProjectReference projectReference) 1324public IReadOnlyList<ProjectReference> GetProjectReferences() 1345public void RemoveProjectReference(ProjectReference projectReference)
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (3)
574var projectReference = new ProjectReference(projectIdToReference, peReference.Properties.Aliases, peReference.Properties.EmbedInteropTypes); 705out ProjectReference? projectReference) 743out ProjectReference? projectReference)
Workspace\ProjectSystem\ProjectSystemProjectFactory.ProjectUpdateState.cs (2)
155public record struct ProjectReferenceInformation(ImmutableArray<string> OutputPaths, ImmutableArray<(string path, ProjectReference ProjectReference)> ConvertedProjectReferences) 157internal ProjectReferenceInformation WithConvertedProjectReference(string path, ProjectReference projectReference)
Workspace\Solution\Project.cs (6)
136public IEnumerable<ProjectReference> ProjectReferences => State.ProjectReferences.Where(pr => this.Solution.ContainsProject(pr.ProjectId)); 142public IReadOnlyList<ProjectReference> AllProjectReferences => State.ProjectReferences; 615public Project AddProjectReference(ProjectReference projectReference) 622public Project AddProjectReferences(IEnumerable<ProjectReference> projectReferences) 628public Project RemoveProjectReference(ProjectReference projectReference) 635public Project WithProjectReferences(IEnumerable<ProjectReference> projectReferences)
Workspace\Solution\ProjectChanges.cs (3)
25public IEnumerable<ProjectReference> GetAddedProjectReferences() 28public IEnumerable<ProjectReference> GetRemovedProjectReferences() 114private static IEnumerable<ProjectReference> GetChangedProjectReferences(Project newProject, Project oldProject)
Workspace\Solution\ProjectDependencyGraph.cs (1)
135internal ProjectDependencyGraph WithProjectReferences(ProjectId projectId, IReadOnlyList<ProjectReference> projectReferences)
Workspace\Solution\ProjectDependencyGraph_AddProjectReference.cs (1)
15internal ProjectDependencyGraph WithAdditionalProjectReferences(ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences)
Workspace\Solution\ProjectInfo.cs (7)
130public IReadOnlyList<ProjectReference> ProjectReferences { get; } 162IReadOnlyList<ProjectReference> projectReferences, 196IEnumerable<ProjectReference>? projectReferences, 224IEnumerable<ProjectReference>? projectReferences = null, 265IEnumerable<ProjectReference>? projectReferences = null, 290IReadOnlyList<ProjectReference>? projectReferences = null, 386public ProjectInfo WithProjectReferences(IEnumerable<ProjectReference>? projectReferences)
Workspace\Solution\ProjectReference.cs (8)
17public sealed class ProjectReference : IEquatable<ProjectReference> 41=> this.Equals(obj as ProjectReference); 43public bool Equals(ProjectReference reference) 56public static bool operator ==(ProjectReference left, ProjectReference right) 57=> EqualityComparer<ProjectReference>.Default.Equals(left, right); 59public static bool operator !=(ProjectReference left, ProjectReference right)
Workspace\Solution\ProjectState.cs (3)
677public IReadOnlyList<ProjectReference> ProjectReferences => this.ProjectInfo.ProjectReferences; 827foreach (var projectReference in ProjectReferences) 836public ProjectState WithProjectReferences(IReadOnlyList<ProjectReference> projectReferences)
Workspace\Solution\Solution.cs (9)
642public Solution AddProjectReference(ProjectId projectId, ProjectReference projectReference) 658public Solution AddProjectReferences(ProjectId projectId, IEnumerable<ProjectReference> projectReferences) 667foreach (var projectReference in collection) 688public Solution RemoveProjectReference(ProjectId projectId, ProjectReference projectReference) 719public Solution WithProjectReferences(ProjectId projectId, IEnumerable<ProjectReference>? projectReferences) 1879private void CheckCircularProjectReferences(ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 1881foreach (var projectReference in projectReferences) 1904private void CheckSubmissionProjectReferences(ProjectId projectId, IEnumerable<ProjectReference> projectReferences, bool ignoreExistingReferences) 1911foreach (var projectReference in projectReferences)
Workspace\Solution\SolutionCompilationState.cs (5)
679ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 688public SolutionCompilationState RemoveProjectReference(ProjectId projectId, ProjectReference projectReference) 698ProjectId projectId, IReadOnlyList<ProjectReference> projectReferences) 1298ICompilationTracker tracker, ProjectState fromProject, ProjectReference projectReference, bool includeCrossLanguage, CancellationToken cancellationToken) 1343ProjectReference projectReference, ProjectState fromProject, bool includeCrossLanguage, CancellationToken cancellationToken)
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (4)
497foreach (var projectReference in this.ProjectState.ProjectReferences) 644void AddMetadataReference(ProjectReference projectReference, MetadataReference? metadataReference) 1055foreach (var dependentProjectReference in projectState.ProjectReferences) 1092foreach (var dependentProjectReference in projectState.ProjectReferences)
Workspace\Solution\SolutionState.cs (5)
455foreach (var projectReference in newState.ProjectReferences) 766public StateChange AddProjectReferences(ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 787public StateChange RemoveProjectReference(ProjectId projectId, ProjectReference projectReference) 827public StateChange WithProjectReferences(ProjectId projectId, IReadOnlyList<ProjectReference> projectReferences) 1402internal bool ContainsProjectReference(ProjectId projectId, ProjectReference projectReference)
Workspace\Solution\SolutionState_Checksum.cs (1)
166foreach (var refProject in projectState.ProjectReferences)
Workspace\Workspace.cs (9)
913protected internal void OnProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 930protected internal void OnProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference) 1475var newProjRef = new ProjectReference(matchingProjectId, pemeta.Properties.Aliases, pemeta.Properties.EmbedInteropTypes); 1879foreach (var removedProjectReference in projectChanges.GetRemovedProjectReferences()) 1885foreach (var addedProjectReference in projectChanges.GetAddedProjectReferences()) 2114protected virtual void ApplyProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 2125protected virtual void ApplyProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference) 2359protected void CheckProjectHasProjectReference(ProjectId fromProjectId, ProjectReference projectReference) 2372protected void CheckProjectDoesNotHaveProjectReference(ProjectId fromProjectId, ProjectReference projectReference)
Microsoft.CodeAnalysis.Workspaces.MSBuild (15)
MSBuild\MSBuildProjectLoader.Worker.cs (1)
64private readonly Dictionary<ProjectId, List<ProjectReference>> _projectIdToProjectReferencesMap;
MSBuild\MSBuildProjectLoader.Worker_ResolveReferences.cs (12)
24public ImmutableHashSet<ProjectReference> ProjectReferences { get; } 27public ResolvedReferences(ImmutableHashSet<ProjectReference> projectReferences, ImmutableArray<MetadataReference> metadataReferences) 57private readonly ImmutableHashSet<ProjectReference>.Builder _projectReferences; 64_projectReferences = ImmutableHashSet.CreateBuilder<ProjectReference>(); 93public void AddProjectReference(ProjectReference projectReference) 98public void SwapMetadataReferenceForProjectReference(ProjectReference projectReference, params string?[] possibleMetadataReferencePaths) 180private ImmutableHashSet<ProjectReference> GetProjectReferences() 247var newProjectReference = CreateProjectReference(from: id, to: unknownProjectId, aliases); 308var newProjectReference = CreateProjectReference(from: id, to: projectReferenceInfo.Id, aliases); 366private ProjectReference CreateProjectReference(ProjectId from, ProjectId to, ImmutableArray<string> aliases) 368var newReference = new ProjectReference(to, aliases); 402var newProjectReference = CreateProjectReference(from: id, to: projectReferenceId, aliases);
MSBuild\MSBuildWorkspace.cs (2)
650protected override void ApplyProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 665protected override void ApplyProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference)
Microsoft.CodeAnalysis.Workspaces.MSBuild.UnitTests (5)
NetCoreTests.cs (4)
174var projectReference = Assert.Single(project.ProjectReferences); 221var projectReference = Assert.Single(project.ProjectReferences); 399var projectReference = Assert.Single(project.ProjectReferences); 652var projectReference = Assert.Single(project.ProjectReferences);
VisualStudioMSBuildWorkspaceTests.cs (1)
2942var pref = project.ProjectReferences.First();
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (6)
SolutionUtilities.cs (1)
99public static Tuple<Project, ProjectReference> GetSingleAddedProjectReference(Solution oldSolution, Solution newSolution)
Workspaces\TestHostProject`1.cs (3)
34public IEnumerable<ProjectReference> ProjectReferences; 117ProjectReferences = SpecializedCollections.EmptyEnumerable<ProjectReference>(); 152ProjectReferences = projectReferences != null ? projectReferences.Select(p => new ProjectReference(p.Id)) : SpecializedCollections.EmptyEnumerable<ProjectReference>();
Workspaces\TestWorkspace`1.cs (2)
276public new void OnProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 279public new void OnProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference)
Microsoft.CodeAnalysis.Workspaces.UnitTests (28)
SolutionTests\ProjectDependencyGraphTests.cs (6)
508var aToB = a.ProjectReferences.Single(reference => reference.ProjectId == b.Id); 536var aToB = a.ProjectReferences.Single(reference => reference.ProjectId == b.Id); 566var aToB = a.ProjectReferences.Single(reference => reference.ProjectId == b.Id); 615var firstBToC = b.ProjectReferences.First(reference => reference.ProjectId == c.Id); 620var remainingBToC = b.ProjectReferences.Single(reference => reference.ProjectId == c.Id); 718var referencesByTargetProject = new Dictionary<string, List<ProjectReference>>();
SolutionTests\ProjectInfoTests.cs (6)
51var projectReference = new ProjectReference(ProjectId.CreateNewId()); 112var projectReference = new ProjectReference(ProjectId.CreateNewId()); 115Assert.Same(projectReference, ((ImmutableArray<ProjectReference>)info1.ProjectReferences).Single()); 118Assert.True(((ImmutableArray<ProjectReference>)info2.ProjectReferences).IsEmpty); 121Assert.True(((ImmutableArray<ProjectReference>)info3.ProjectReferences).IsEmpty); 124Assert.True(((ImmutableArray<ProjectReference>)info4.ProjectReferences).IsEmpty);
SolutionTests\SolutionTests.cs (16)
1173var projectReference = new ProjectReference(projectId2); 1980var projectRef = new ProjectReference(projectId2); 1988var projectRefs = (IEnumerable<ProjectReference>)ImmutableArray.Create( 2010var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2012var projectRefs = (IEnumerable<ProjectReference>)ImmutableArray.Create(externalProjectRef); 2033var projectRef2 = new ProjectReference(projectId2); 2034var projectRef3 = new ProjectReference(projectId3); 2035var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2039var solution2 = solution.AddProjectReferences(projectId, EmptyEnumerable<ProjectReference>()); 2045AssertEx.Equal((ProjectReference[])[projectRef2], solution3.GetProject(projectId)!.ProjectReferences); 2046AssertEx.Equal((ProjectReference[])[projectRef2, externalProjectRef], solution3.GetProject(projectId)!.AllProjectReferences); 2071var projectRef2 = new ProjectReference(projectId2); 2072var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2078AssertEx.Equal((ProjectReference[])[projectRef2], solution2.GetProject(projectId)!.AllProjectReferences); 2082AssertEx.Equal((ProjectReference[])[externalProjectRef], solution3.GetProject(projectId)!.AllProjectReferences); 3054foreach (var referenced in project.ProjectReferences)
Microsoft.VisualStudio.LanguageServices (4)
Preview\ReferenceChange.ProjectReferenceChange.cs (2)
13private readonly ProjectReference _reference; 16public ProjectReferenceChange(ProjectReference reference, string projectReferenceName, ProjectId projectId, string projectName, bool isAdded, PreviewEngine engine)
ProjectSystem\VisualStudioWorkspaceImpl.cs (2)
660ProjectId projectId, ProjectReference projectReference) 700ProjectId projectId, ProjectReference projectReference)
Microsoft.VisualStudio.LanguageServices.CSharp (2)
ProjectSystemShim\CSharpProjectShim.ICSharpVenusProjectSite.cs (2)
31foreach (var projectReferenceToRemove in projectReferencesToRemove) 46var existingProjectReference = ProjectSystemProject.GetProjectReferences().Single(p => p.ProjectId == projectSite.ProjectSystemProject.Id);
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (1)
ProjectSystemShim\CPS\CSharpReferencesTests.cs (1)
49IEnumerable<ProjectReference> GetProject3ProjectReferences()
Microsoft.VisualStudio.LanguageServices.Implementation (1)
ProjectSystem\CPS\CPSProject_IWorkspaceProjectContext.cs (1)
221var otherProjectReference = _projectSystemProject.GetProjectReferences().Single(pr => pr.ProjectId == otherProjectId);
Roslyn.VisualStudio.Next.UnitTests (1)
Remote\SerializationValidator.cs (1)
153await VerifyAssetSerializationAsync<ProjectReference>(