diff --git a/Pilz.Updating/Json/AppVersionStringJsonConverter.cs b/Pilz.Updating/Json/AppVersionStringJsonConverter.cs
deleted file mode 100644
index 485a51c..0000000
--- a/Pilz.Updating/Json/AppVersionStringJsonConverter.cs
+++ /dev/null
@@ -1,81 +0,0 @@
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
-
-namespace Pilz.Updating.Json;
-
-public class AppVersionStringJsonConverter(bool serializeAsObject) : JsonConverter
-{
- public AppVersionStringJsonConverter() : this(false)
- {
- }
-
- ///
- /// Writes the JSON representation of the object.
- ///
- /// The to write to.
- /// The value.
- /// The calling serializer.
- public override void WriteJson(JsonWriter writer, object? value, JsonSerializer serializer)
- {
- if (value == null)
- {
- writer.WriteNull();
- return;
- }
-
- if (serializeAsObject || value is not AppVersion appVersion)
- writer.WriteValue(value);
- else
- writer.WriteValue(appVersion.ToString());
- }
-
- ///
- /// Reads the JSON representation of the object.
- ///
- /// The to read from.
- /// Type of the object.
- /// The existing value of object being read.
- /// The calling serializer.
- /// The object value.
- public override object? ReadJson(JsonReader reader, Type objectType, object? existingValue, JsonSerializer serializer)
- {
- if (reader.TokenType == JsonToken.Null)
- return null;
-
- try
- {
- if (reader.TokenType == JsonToken.String)
- {
- var strValue = reader.Value?.ToString();
-
- if (string.IsNullOrWhiteSpace(strValue))
- return null;
-
- return AppVersion.Parse(strValue);
-
- }
-
- if (reader.TokenType == JsonToken.StartObject)
- return serializer.Deserialize(reader);
- }
- catch (Exception ex)
- {
- throw new JsonSerializationException("Error converting value {0} to type '{1}'.", ex);
- }
-
- // we don't actually expect to get here.
- throw new JsonSerializationException("Unexpected token {0} when parsing app version.");
- }
-
- ///
- /// Determines whether this instance can convert the specified object type.
- ///
- /// Type of the object.
- ///
- /// true if this instance can convert the specified object type; otherwise, false.
- ///
- public override bool CanConvert(Type objectType)
- {
- return objectType == typeof(AppVersion);
- }
-}
diff --git a/Pilz.Updating/Pilz.Updating.csproj b/Pilz.Updating/Pilz.Updating.csproj
index fc396c4..54c1010 100644
--- a/Pilz.Updating/Pilz.Updating.csproj
+++ b/Pilz.Updating/Pilz.Updating.csproj
@@ -7,7 +7,7 @@
- 4.2.1
+ 4.2.2
diff --git a/Pilz.Updating/UpdatePackageInfo.cs b/Pilz.Updating/UpdatePackageInfo.cs
index 381a24c..e8bce98 100644
--- a/Pilz.Updating/UpdatePackageInfo.cs
+++ b/Pilz.Updating/UpdatePackageInfo.cs
@@ -1,11 +1,13 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
+using Pilz.Json;
namespace Pilz.Updating;
public class UpdatePackageInfo(AppVersion version, string address)
{
public string? Name { get; set; }
+ [JsonConverter(typeof(AppVersionStringJsonConverter))]
public AppVersion Version { get; set; } = version;
public UpdateNotes Notes { get; } = new();
public string Address { get; set; } = address;