|
- using Microsoft.Build.Evaluation;
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
-
- namespace SIE.VSDK.Extensions
- {
- public static class DirectoryInfoExtensions
- {
- public static void DeepCopy(this DirectoryInfo directory, string destinationDir)
- {
- foreach (string dir in Directory.GetDirectories(directory.FullName, "*", SearchOption.AllDirectories))
- {
- string dirToCreate = dir.Replace(directory.FullName, destinationDir);
- Directory.CreateDirectory(dirToCreate);
- }
-
- foreach (string newPath in Directory.GetFiles(directory.FullName, "*.*", SearchOption.AllDirectories))
- {
- File.Copy(newPath, newPath.Replace(directory.FullName, destinationDir), true);
- }
- }
- public static List<string> GetCsProjFiles(this DirectoryInfo directory)
- {
-
- List<string> listCsProj = new List<string>();
- foreach (string newPath in Directory.GetFiles(directory.FullName, "*.csproj", SearchOption.AllDirectories))
- {
- ProjectCollection pc = new ProjectCollection();
- Project project = pc.LoadProject(newPath, null);
- var properties = project.Properties;
- foreach (var property in properties)
- {
- string result = $"Property: \"{property.Name}\" Value: {property.UnevaluatedValue}";
- }
- listCsProj.Add(newPath);
- }
- return listCsProj;
- }
- }
- }
|