日期:2010-02-17  浏览次数:20369 次

在此练习中,您将在 ASP.NET Web 应用程序中实现 HTTP 处理程序以返回 GeoRSS 订阅源。GeoRSS 是在 RSS 订阅源中包含地理空间数据时所用的一个标准,它定义了一种名为 GeoRSS GML 的特定格式,用来在订阅源中包含 GML 格式的数据。客户端应用程序可以订阅 GeoRSS 订阅源,订阅方式与订阅常规 RSS 订阅源相同。可以轻松地将 GeoRSS 格式的数据导入 Microsoft Virtual Earth VEMap 控件中。

注意:您可以从 C:\SQLHOLS\Spatial and VE\Solution\StoreFinderSite 中的完成的网站页面复制此练习中所用的代码。

实现 HTTP 处理程序

1. 启动 Microsoft Visual Studio 2008。

2. 在文件菜单中,单击打开网站,然后打开 C:\SQLHOLs\Spatial and VE\Starter\StoreFinderSite 网站。

3. 在解决方案资源管理器中,展开 App_Code,然后双击 GeoRSSHandler.vb 在代码编辑器中打开它。

注意:HTTP 处理程序是一个代码模块,用于处理对 Web 应用程序的 HTTP 请求。通常由默认 ASP.NET 请求处理程序处理对 ASP.NET Web 应用程序的请求,但是您可以针对特定文件扩展名创建自定义处理程序。在本例中,您将实现一个将用于处理扩展名为 .georss 的文件的请求的处理程序。

4. 检查现有的代码。处理传入请求的过程名为 ProcessRequest。请注意,此过程不完整,包含大量必须添加代码的注释。

5. 在注释 Build the GeoRSS feed下,添加以下代码,以开始构建将由 HTTP 处理程序返回的 GeoRSS 订阅源。

以下为引用的内容:

rssOutput.AppendLine("  
rssOutput.AppendLine("xmlns:georss='http://www.georss.org/georss'"
)  
rssOutput.AppendLine("xmlns:gml='http://www.opengis.net/gml'>"
)  
rssOutput.AppendLine(""
)  
rssOutput.AppendLine("Store Locations"
)  
rssOutput.AppendLine(""
)  
rssOutput.AppendLine("" + System.DateTime.Now + ""
)  
rssOutput.AppendLine(""
)  
rssOutput.AppendLine("SQL Server"
)  
rssOutput.AppendLine("")
 

6. 在注释 Open a connection to the database下,添加以下代码。

以下为引用的内容:

sqlConn.Open() 

7. 在注释 Use the GetStoresGML stored proc to get all stores by default下,添加以下代码。

以下为引用的内容: