Я пытаюсь создать карту сайта в проекте ASP.NET MVC.
Этот код в моем контроллере Node ...
Function Sitemap() As ContentResult
Dim db As New EfrDotOrgEntities
Dim Nodes = db.Node.ToList
Dim RequestUrl As Uri = Url.RequestContext.HttpContext.Request.Url
Dim AbsoluteRoot As String = String.Format("{0}://{1}", RequestUrl.Scheme, RequestUrl.Authority)
Dim map As XDocument = <?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
</urlset>
For Each n As Node In Nodes
map.Add(<url>
<loc><%= AbsoluteRoot + Url.RouteUrl("IdOnly", New With {.id = n.Id}) %></loc>
</url>)
Next
Return Content(map.ToString, "text/xml", Encoding.UTF8)
End Function
(вот изображение, потому что переполнение стека плохо окрашивает код VB)
... выдает эту ошибку:
Эта операция создаст
неправильно структурированный документ.
Не будет известно , где добавить этот контент.
Как мне сказать, чтобы вставить этот бит XML в <urlset>
?