[TestMethod]
public void TestMethod1()
{
var pathLog = @"D:\SVN\?????\trunk";
var fileNameList = Directory.GetFiles(pathLog, "*.csproj", SearchOption.AllDirectories);
var fileList = fileNameList.Select(c => new FileInfo(c));
foreach (var f in fileList)
{
//Trace.TraceInformation(f.FullName);
ProcessProjectFile(f);
}
}
private void ProcessProjectFile(FileInfo f)
{
var projectName = f.Name.Replace(".csproj", "");
//Trace.TraceInformation($"PROJECT: {projectName}");
var lines = File.ReadAllLines(f.FullName);
foreach (var s in lines)
{
if (s.Contains("Include=\"Syncfusion."))
{
//Trace.TraceInformation($" - {s}");
ParseSfAssembly(projectName, s);
}
}
}
private void ParseSfAssembly(string projectName, string line)
{
var regex = new Regex(@"(
var match = regex.Match(line);
if (match.Success)
{
var sfName = $"{match.Groups[3]}{match.Groups[4]}";
//var sfVer = match.Groups[8];
var sfVer = "18.1.0.42";
Trace.TraceInformation($"Install-Package {sfName} -ProjectName {projectName} -Version {sfVer}");
}
}
}