diff --git a/OliverBooth/Data/Blog/Rss/BlogItem.cs b/OliverBooth/Data/Blog/Rss/BlogItem.cs index 3b22cf7..0679df4 100644 --- a/OliverBooth/Data/Blog/Rss/BlogItem.cs +++ b/OliverBooth/Data/Blog/Rss/BlogItem.cs @@ -12,16 +12,16 @@ public sealed class BlogItem [XmlElement("comments")] public string Comments { get; set; } = default!; - + [XmlElement("creator", Namespace = "http://purl.org/dc/elements/1.1/")] public string Creator { get; set; } = default!; - + [XmlElement("pubDate")] public string PubDate { get; set; } = default!; - + [XmlElement("guid")] - public string Guid { get; set; } = default!; - + public BlogItemGuid Guid { get; set; } = default!; + [XmlElement("description")] public string Description { get; set; } = default!; } diff --git a/OliverBooth/Data/Blog/Rss/BlogItemGuid.cs b/OliverBooth/Data/Blog/Rss/BlogItemGuid.cs new file mode 100644 index 0000000..d3a9dc4 --- /dev/null +++ b/OliverBooth/Data/Blog/Rss/BlogItemGuid.cs @@ -0,0 +1,18 @@ +using System.Xml.Serialization; + +namespace OliverBooth.Data.Blog.Rss; + +public struct BlogItemGuid +{ + public BlogItemGuid() + { + } + + [XmlAttribute("isPermaLink")] + public bool IsPermaLink { get; set; } = false; + + [XmlText] + public string Value { get; set; } = default!; + + public static implicit operator BlogItemGuid(string value) => new() { Value = value }; +}