【发布时间】:2009-05-01 00:22:46
【问题描述】:
我正在尝试在 ASP.NET MVC 项目中创建站点地图。
我的节点控制器中的这段代码...
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
(这是一张图片,因为 Stack Overflow 无法很好地为 VB 代码着色)
...产生此错误:
此操作将创建一个 文档结构不正确。
它不知道在哪里添加该内容。
我如何告诉它把那段 XML 插入到 <urlset> 中?
【问题讨论】:
标签: .net asp.net-mvc xml vb.net sitemap