データベースから Google のサイトマップ xml を作成し、C# を使用してサーバーに保存する必要があります。これは私がこれまでに得たすべてです..(このxmlファイルを取得し、c#を使用してxxxx.xmlというファイル名でサーバーに保存する方法を教えてください)
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create PROCEDURE [dbo].[SitemapXML]
(@url NVARCHAR(500) = '', )
AS
BEGIN
WITH XMLNAMESPACES
(
DEFAULT 'http://www.sitemaps.org/schemas/sitemap/0.9'
)
SELECT
@url + '/default.aspx?page=' + CAST(a.id AS NVARCHAR(10)) AS 'location',
CONVERT(NVARCHAR(30), a.page_date, 110) AS 'lastmodified',
FROM
tbl_mytable a WITH (NOLOCK)
FOR XML PATH('url'), ROOT('urlroot')
END
しかし、これは xml に URL を含む非常に少数のページを読み取り、id 10 で途中で壊れています。また、xml タグを適切に閉じていません。助けてください。
ありがとう
出力は次のとおりです。
<urlroot xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><location>xxx.com/default.aspx?page=1</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=2</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=3</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=4</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=5</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=6</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=7</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=8</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=9</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=10</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=11</location><lastmod>01-01-2012</lastmod></url>
<url><location>xxx.com/default.aspx?page=12</location><lastmod>01-01-2012</lastmod>
12ページで壊れていますが、データベーステーブルに非常に多くのページがあります.