|
|
|
@ -36,7 +36,7 @@ public class LocalReferenceConverter : ITransientDependency |
|
|
|
Logger.LogInformation($"Converted {targetProjects.Length} projects to local references."); |
|
|
|
} |
|
|
|
|
|
|
|
private async Task ConvertProjectToLocalReferences(string targetProject, LocalProjectList localProjects) |
|
|
|
private async Task ConvertProjectToLocalReferences(string targetProject, List<string> localProjects) |
|
|
|
{ |
|
|
|
var xmlDocument = new XmlDocument() { PreserveWhitespace = true }; |
|
|
|
xmlDocument.Load(GenerateStreamFromString(File.ReadAllText(targetProject))); |
|
|
|
@ -52,7 +52,10 @@ public class LocalReferenceConverter : ITransientDependency |
|
|
|
{ |
|
|
|
var packageName = matchedNode!.Attributes!["Include"].Value; |
|
|
|
|
|
|
|
var localProject = localProjects.GetByName(packageName); |
|
|
|
var localProject = localProjects.Find(x => |
|
|
|
x.EndsWith($"\\{packageName}.csproj") || |
|
|
|
x.EndsWith($"/{packageName}.csproj") |
|
|
|
); |
|
|
|
|
|
|
|
if (localProject == null) |
|
|
|
{ |
|
|
|
@ -72,9 +75,9 @@ public class LocalReferenceConverter : ITransientDependency |
|
|
|
File.WriteAllText(targetProject, XDocument.Parse(xmlDocument.OuterXml).ToString()); |
|
|
|
} |
|
|
|
|
|
|
|
private LocalProjectList GetLocalProjects(List<string> localPaths) |
|
|
|
private List<string> GetLocalProjects(List<string> localPaths) |
|
|
|
{ |
|
|
|
var list = new LocalProjectList(); |
|
|
|
var list = new List<string>(); |
|
|
|
|
|
|
|
foreach (var localPath in localPaths) |
|
|
|
{ |
|
|
|
@ -98,12 +101,4 @@ public class LocalReferenceConverter : ITransientDependency |
|
|
|
stream.Position = 0; |
|
|
|
return stream; |
|
|
|
} |
|
|
|
|
|
|
|
private class LocalProjectList : List<string> |
|
|
|
{ |
|
|
|
public string GetByName(string projectName) |
|
|
|
{ |
|
|
|
return Find(x => x.EndsWith($"{projectName}.csproj") || x.EndsWith(projectName)); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|