34 lines
953 B
C#
34 lines
953 B
C#
|
using System;
|
||
|
using System.Xml;
|
||
|
using ln.build.semver;
|
||
|
|
||
|
namespace ln.build.semver.provider
|
||
|
{
|
||
|
|
||
|
public class DotNetProvider : Provider
|
||
|
{
|
||
|
public DotNetProvider(): base("dotnet")
|
||
|
{}
|
||
|
|
||
|
public override SemVersion GetVersion(string source)
|
||
|
{
|
||
|
XmlDocument projectFile = new XmlDocument();
|
||
|
projectFile.Load(source);
|
||
|
|
||
|
XmlNode nodeVersion = projectFile.SelectSingleNode("Project/PropertyGroup/Version");
|
||
|
return SemVersion.Parse(nodeVersion.InnerText);
|
||
|
}
|
||
|
|
||
|
public override void SetVersion(string source, SemVersion version)
|
||
|
{
|
||
|
XmlDocument projectFile = new XmlDocument();
|
||
|
projectFile.Load(source);
|
||
|
|
||
|
XmlNode nodeVersion = projectFile.SelectSingleNode("Project/PropertyGroup/Version");
|
||
|
nodeVersion.InnerText = version.ToString();
|
||
|
|
||
|
projectFile.Save(source);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|