2011-10-09 52 views

回答

1

不是开箱即用,但它当然是可能的。

基本上,要解决这个项目,你需要将它分解为以下几个阶段。

  1. 获取ASP.NET拦截sitemap.xml的要求
  2. 移调您在站点地图提供为XML格式拥有的一切。
  3. 吐出XML格式。

为了得到第1步完成的,你需要做研究如何根据你就会英寸IIS6和IIS7经典模式举办将产生不同的执行逻辑IIS7集成模式的IIS版本做到这一点...以前的IIS服务器配置需要更多的时间。

一旦你有一个请求经历ASP.NET过程中,你在哪里能线了一个HTTP处理程序,或者如果您正在使用MVC,路线,那么你就能够与泵出XML进行。

第一步将能够转在Web.sitemap文件中的数据。为此,您需要访问SiteMap类。 (http://msdn.microsoft.com/en-us/library/system.web.sitemap_members(v=VS.85).aspx)。

然后最后,你只需要吐了出来。也许只是使用Linq来XML ...但这只是一个非常简单的任务。

+0

谢谢。使用XLinq很容易进行转换。我无法控制云托管提供商中的IIS(AppHarbor),但假设我可以将搜索引擎指向不同的文件名,而不会出现任何问题(也不使用MVC)。 –

+0

酷弯。我不确定AppHarbour的具体情况,但我会想象他们将以IIS7集成模式托管他们的东西。但是,是的,将它们指向另一个目录路径而不是“标准”sitemap.xml是个好主意。我忘了那个伎俩。 –