日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
詳解ASP.NET中如何創(chuàng)建GeoRSS訂閱源

在此練習(xí)中,您將在 ASP.NET Web 應(yīng)用程序中實(shí)現(xiàn) HTTP 處理程序以返回 GeoRSS 訂閱源。GeoRSS 是在 RSS 訂閱源中包含地理空間數(shù)據(jù)時(shí)所用的一個(gè)標(biāo)準(zhǔn),它定義了一種名為 GeoRSS GML 的特定格式,用來(lái)在訂閱源中包含 GML 格式的數(shù)據(jù)??蛻舳藨?yīng)用程序可以訂閱 GeoRSS 訂閱源,訂閱方式與訂閱常規(guī) RSS 訂閱源相同??梢暂p松地將 GeoRSS 格式的數(shù)據(jù)導(dǎo)入 Microsoft Virtual Earth VEMap 控件中。

成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的鐵門(mén)關(guān)網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

#T#

注意:您可以從 C:\SQLHOLS\Spatial and VE\Solution\StoreFinderSite 中的完成的網(wǎng)站頁(yè)面復(fù)制此練習(xí)中所用的代碼。

實(shí)現(xiàn) HTTP 處理程序

1. 啟動(dòng) Microsoft Visual Studio 2008。

2. 在文件菜單中,單擊打開(kāi)網(wǎng)站,然后打開(kāi) C:\SQLHOLs\Spatial and VE\Starter\StoreFinderSite 網(wǎng)站。

3. 在解決方案資源管理器中,展開(kāi) App_Code,然后雙擊 GeoRSSHandler.vb 在代碼編輯器中打開(kāi)它。

注意:HTTP 處理程序是一個(gè)代碼模塊,用于處理對(duì) Web 應(yīng)用程序的 HTTP 請(qǐng)求。通常由默認(rèn) ASP.NET 請(qǐng)求處理程序處理對(duì) ASP.NET Web 應(yīng)用程序的請(qǐng)求,但是您可以針對(duì)特定文件擴(kuò)展名創(chuàng)建自定義處理程序。在本例中,您將實(shí)現(xiàn)一個(gè)將用于處理擴(kuò)展名為 .georss 的文件的請(qǐng)求的處理程序。

4. 檢查現(xiàn)有的代碼。處理傳入請(qǐng)求的過(guò)程名為 ProcessRequest。請(qǐng)注意,此過(guò)程不完整,包含大量必須添加代碼的注釋。

5. 在注釋 Build the GeoRSS feed下,添加以下代碼,以開(kāi)始構(gòu)建將由 HTTP 處理程序返回的 GeoRSS 訂閱源。

 
 
  1. rssOutput.AppendLine("
  2. rssOutput.AppendLine("xmlns:georss='http://www.georss.org/georss'")
  3. rssOutput.AppendLine("xmlns:gml='http://www.opengis.net/gml'>")
  4. rssOutput.AppendLine("")
  5. rssOutput.AppendLine("Store Locations")
  6. rssOutput.AppendLine("")
  7. rssOutput.AppendLine("" + System.DateTime.Now + "")
  8. rssOutput.AppendLine("")
  9. rssOutput.AppendLine("SQL Server")
  10. rssOutput.AppendLine("")

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

 
 
  1. sqlConn.Open()

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

 
 
  1. spName = "GetStoresGML"

注意:默認(rèn)情況下,對(duì)此 HTTP 處理程序的請(qǐng)求將調(diào)用 GetStoresGML 存儲(chǔ)過(guò)程,并返回包含所有商店的 GeoRSS 訂閱源。

8. 在注釋If a searchFrom parameter is provided, use GetNearbyStores and add the provided lat and lon coordinates as parameters下,添加以下代碼。

 
 
  1. Dim searchFrom As String = context.Request.QueryString("SearchFrom")
  2. If Not searchFrom Is Nothing Then
  3. spName = "GetNearbyStoresGML"
  4. Dim latLong() As String = Split(searchFrom, ",", 2)
  5. cmd.Parameters.Add(New SqlParameter("Lat", latLong(0)))
  6. cmd.Parameters.Add(New SqlParameter("Long", latLong(1)))
  7. End If

注意:如果請(qǐng)求包含名為 SearchFrom 的參數(shù)(假定它包含以逗號(hào)分隔的緯度和經(jīng)度坐標(biāo)對(duì)),處理程序?qū)拇藚?shù)提取緯度和經(jīng)度值,并使用 GetNearbyStoresGML 存儲(chǔ)過(guò)程返回 GeoRSS 訂閱源,訂閱源中包含請(qǐng)求的搜索點(diǎn)周?chē)綀A 100 km 范圍內(nèi)的商店。

9. 在注釋 Specify the stored procedure name as the command text(將存儲(chǔ)過(guò)程名稱(chēng)指定為命令文本)下,添加以下代碼。

 
 
  1. cmd.CommandText = spName

10. 在注釋 Create an element for this row下,添加以下代碼來(lái)為存儲(chǔ)過(guò)程的結(jié)果中的每一行都創(chuàng)建一個(gè) 標(biāo)記。

 
 
  1. rssOutput.AppendLine("")

11. 在注釋 Use columns 0 and 1 for the title and description下,添加以下代碼以根據(jù)存儲(chǔ)過(guò)程返回的數(shù)據(jù)創(chuàng)建 ", geomRdr.GetValue(0)))

 
 
  1. rssOutput.AppendLine(String.Format("{0}", _
  2. geomRdr.GetValue(1)))

12. 在注釋 Add a element下,添加以下代碼來(lái)為此條目創(chuàng)建 元素。

 
 
  1. rssOutput.AppendLine("")

13. 在注釋 Get the geography instance GML from column 2下,添加以下代碼,以從存儲(chǔ)過(guò)程結(jié)果中檢索 GML 數(shù)據(jù)。

 
 
  1. gml = geomRdr.GetValue(2).ToString()

14. 在注釋 Add the elements to the output XML下,添加以下代碼以向 GeoRSS 訂閱源添加 GML 數(shù)據(jù)。

 
 
  1. rssOutput.AppendLine(gml)

15. 在注釋 Close and elements下,添加以下代碼。

 
 
  1. rssOutput.AppendLine("")
  2. rssOutput.AppendLine("")

16. 在注釋 Close the document and send it as the response下,添加以下代碼以完成 GeoRSS 訂閱源并將其發(fā)送給請(qǐng)求人。

 
 
  1. rssOutput.Append("")
  2. context.Response.Write(rssOutput.ToString())

17. 保存 GeoRSSHandler.vb。

注冊(cè) HTTP 處理程序

1. 在解決方案資源管理器中,雙擊 web.config 在編輯器中打開(kāi)它。

2. 在 部分中,在注釋 Register the GeoRSSHandler for .georss requests下,添加以下 XML。

 
 

 注意:您必須為特定文件擴(kuò)展名注冊(cè) HTTP 處理程序,以便 Internet Information Services 將針對(duì)這些文件的請(qǐng)求轉(zhuǎn)發(fā)到正確的處理程序。

3. 保存 web.config。

測(cè)試 HTTP 處理程序

1. 在解決方案資源管理器中,單擊位于樹(shù)的根目錄下的網(wǎng)站項(xiàng)目文件,然后按 F4 查看其屬性。

2. 請(qǐng)注意觀察端口號(hào)屬性。

3. 在網(wǎng)站菜單上,單擊啟動(dòng)選項(xiàng)。

4. 選擇啟動(dòng) URL,輸入以下 URL(將 port 替換為網(wǎng)站的端口號(hào)屬性的值),然后單擊確定。

http://localhost:/storefindersite/test.georss

5. 在調(diào)試菜單上,單擊開(kāi)始執(zhí)行(不調(diào)試)。

6. 當(dāng) Microsoft Internet Explorer ? 打開(kāi)時(shí),查看包含商店名稱(chēng)的 RSS 訂閱源的頁(yè)面。

7. 在 Internet Explorer 中,右鍵單擊該網(wǎng)頁(yè)的任意位置,然后單擊查看源文件以在記事本中打開(kāi)該頁(yè)的源文件。請(qǐng)注意,該頁(yè)的源是您前面創(chuàng)建的 HTTP 處理程序生成的 GeoRSS 訂閱源。

8. 關(guān)閉記事本。

9. 在 Internet Explorer 中的地址欄中,將以下查詢字符串附加到 URL 后,然后按 Enter。

?SearchFrom=34.000000,-118.000000

10. 驗(yàn)證生成的 GeoRSS 訂閱源包含搜索區(qū)域及其中的所有商店。

11. 關(guān)閉 Internet Explorer。


分享文章:詳解ASP.NET中如何創(chuàng)建GeoRSS訂閱源
網(wǎng)頁(yè)URL:http://www.5511xx.com/article/coppjic.html