Browse Source

Created ICsprojFileManager.AddImportAsync method

pull/11054/head
Yunus Emre Kalkan 5 years ago
parent
commit
732e91d4d6
  1. 18
      studio/src/Volo.Abp.Studio.Domain.CommonServices/Volo/Abp/Studio/Modifying/CsprojFileManager.cs
  2. 3
      studio/src/Volo.Abp.Studio.Domain.CommonServices/Volo/Abp/Studio/Modifying/ICsprojFileManager.cs

18
studio/src/Volo.Abp.Studio.Domain.CommonServices/Volo/Abp/Studio/Modifying/CsprojFileManager.cs

@ -74,6 +74,24 @@ public class CsprojFileManager : XmlFileManagerBase, ICsprojFileManager, ITransi
await SaveXmlDocumentAsync(filePath, document);
}
public async Task AddImportAsync(string filePath, string importFilePath)
{
var document = await GetXmlDocumentAsync(filePath);
var relativeImportFilePath = PathHelper.GetRelativePath(filePath, importFilePath);
var importNode = document.CreateElement("Import");
var projectAttr = document.CreateAttribute("Project");
projectAttr.Value = relativeImportFilePath;
importNode.Attributes.Append(projectAttr);
document["Project"].AppendChild(importNode);
document["Project"].AppendChild(document.CreateWhitespace(Environment.NewLine + " "));
await SaveXmlDocumentAsync(filePath, document);
}
public async Task ConvertPackageReferenceToProjectReferenceAsync(string filePath, string projectToReference)
{
var document = await GetXmlDocumentAsync(filePath);

3
studio/src/Volo.Abp.Studio.Domain.CommonServices/Volo/Abp/Studio/Modifying/ICsprojFileManager.cs

@ -10,8 +10,11 @@ public interface ICsprojFileManager
Task AddPackageReferenceAsync(string filePath, string packageName, string version);
Task AddImportAsync(string filePath, string importFilePath);
Task ConvertPackageReferenceToProjectReferenceAsync(string filePath, string projectToReference);
Task<string> GetTargetFrameworkAsync(string filePath);
Task<List<PackageDependency>> GetDependencyListAsync(string filePath);

Loading…
Cancel
Save