private void CreateSitemapXmlFile(List <Feature> features) { using (var fileStream = _fileSystemHelper.CreateWriteStream(Path.Combine(_environment.WebRootPath, "sitemap.xml"))) { var list = features.Select(p => { var dateString = DateTime.Now.ToUniversalTime().ToString("o"); if (p.Attributes.Exists(FeatureAttributes.POI_LAST_MODIFIED)) { if (p.Attributes[FeatureAttributes.POI_LAST_MODIFIED] is DateTime dateTime) { dateString = dateTime.ToUniversalTime().ToString("o"); } else { dateString = p.Attributes[FeatureAttributes.POI_LAST_MODIFIED].ToString(); } } return(new tUrl { lastmod = dateString, loc = "https://israelhiking.osm.org.il/poi/" + p.Attributes[FeatureAttributes.POI_SOURCE] + "/" + p.Attributes[FeatureAttributes.ID], }); }); var siteMap = new urlset { url = list.Concat(new[] { new tUrl { loc = "https://israelhiking.osm.org.il/", lastmod = DateTime.Now.ToUniversalTime().ToString("o") } }).ToArray() }; var serializer = new XmlSerializer(typeof(urlset)); serializer.Serialize(fileStream, siteMap); } }