16 VB.NET Articles - Generate Google Site Map in VB.NET
Viewing Article

Current Rating :

Generate Google Site Map in VB.NET

Friday, February 11, 2011Posted by admin

Category:vb.Net Utilities
 

Google Site Maps are used by Google to index your website. You can create a site map of your website and submit to Google Site Maps for telling Google about all your web pages. Here is the URL for Google Site Maps https://www.google.com/webmasters/tools I use a simple technique to create the site maps of all my site. First of create a new .ASPX page in Visual Studio and name it GoogleMap.aspx Now go to the code file for this and add the following code. ( You would need to tweak the information for your own website) Imports System.IO Imports System.Data.SqlClient Imports System.Xml Imports System.Text Partial Class GoogleMap Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'Put user code to initialize the page here Dim cn As New SqlConnection Dim cl As New clsMain cl.OpenConnection(cn) ' This is my function to open a connection ( use your own code ) Response.Clear() Response.ContentType = "text/xml" Dim objX As New XmlTextWriter(Response.OutputStream, Encoding.UTF8) objX.WriteStartDocument() objX.WriteStartElement("urlset") objX.WriteAttributeString("xmlns", "http://www.google.com/schemas/sitemap/0.84") 'Handles database connection string and command ' Index Page objX.WriteStartElement("url") ' ' objX.WriteElementString("loc", objReader("Name")) objX.WriteElementString("loc", "http://vbnet.redirect.com.au") objX.WriteElementString("lastmod", Format(Now, "yyyy-MM-dd")) objX.WriteElementString("priority", "1.0") objX.WriteEndElement() ' New Articles Page objX.WriteStartElement("url") ' ' objX.WriteElementString("loc", objReader("Name")) objX.WriteElementString("loc", "http://vbnet.redirect.com.au/newarticles.aspx") objX.WriteElementString("lastmod", Format(Now, "yyyy-MM-dd")) objX.WriteElementString("priority", "1.0") objX.WriteEndElement() 'Now generate the url for each articles. The Articles are stored in tblArticles and each Article has a Article ID Dim strSQL As String strSQL = "Select ArticleID , ArticleDate from tblArticles" Dim objCommand = New SqlCommand(strSQL, cn) Dim objReader As SqlDataReader objReader = objCommand.ExecuteReader() 'Populate record for the RSS feed While objReader.Read() objX.WriteStartElement("url") objX.WriteElementString("loc", "http://vbnet.redirect.com.au/ViewArticle?ArticleID= objReader("ArticleID") & ".aspx" ' For each Article ID a new page name is created objX.WriteElementString("lastmod", Format(Now(), "yyyy-MM-dd")) objX.WriteElementString("priority", "1.0") objX.WriteEndElement() End While objReader.Close() cn.Close() ' objX.WriteEndElement() objX.WriteEndElement() objX.WriteEndDocument() objX.Flush() objX.Close() Response.End() End Sub End Class If you browse the page tehen you would see a XML output of all your pages. This page can be submitted to Google Site Maps and Google will index all your submitted pages. This is a dynamic way of creating the site map and it will ensure that your site map is always updated without any intervention. When you create a new Article then the Google Site Map is always updated. Now one more thing at the end . You can use the Cache in your page so that each time your Site Map is accessed your page does not need to open a connection and create a list of all your pages on the fly. In the Google.aspx page add a line <%@ OutputCache Duration="60000" VaryByParam="none" %> as shown below in the following example ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- <%@ OutputCache Duration="60000" VaryByParam="none" %> <%@ Page Language="VB" AutoEventWireup="false" CodeFile="GoogleMap.aspx.vb" Inherits="GoogleMap" %>

Hits:165      Current Rating :      No Of Ratings: 181      AuthorName: admin
  

Comment#23      Friday, February 11, 2011          Posted by Sumeet Singh

 
Hi this site is really great

Comments

Your Name  
 
Your Email( will not appear on page)  
Your Comments