ASP.Net Meta Tags: Programmatically populate Title, Keywords and Description in Page Head Section from database
ASP.Net Meta Tags: Programmatically populate Title, Keywords and Description in Page Head Section from database
I'm trying to create search option in my ASP.net application to check Doctor details based on Location. If I try the below code, only home page is showing. http://example.com/Metatag/Home.aspx
. I want the URL to be changed as per location. Example expected URL:http://example.com/Metatag/chennai/doctors/saidapet
http://example.com/Metatag/Home.aspx
http://example.com/Metatag/chennai/doctors/saidapet
I'm new to this technology.
Page Load
protected void Page_Load(object sender, EventArgs e)
{
string page = Request.Url.Segments[Request.Url.Segments.Length - 1];
string location = Request.Url.Segments[Request.Url.Segments.Length - 1];
DataTable dtMeta = this.GetData(page,location);
//Add Page Title
this.Page.Title = dtMeta.Rows[0]["Title"].ToString();
//Add Keywords Meta Tag
HtmlMeta keywords = new HtmlMeta();
keywords.HttpEquiv = "keywords";
keywords.Name = "keywords";
keywords.Content = dtMeta.Rows[0]["Keywords"].ToString();
this.Page.Header.Controls.Add(keywords);
//Add Description Meta Tag
HtmlMeta description = new HtmlMeta();
description.HttpEquiv = "description";
description.Name = "description";
description.Content = dtMeta.Rows[0]["Description"].ToString();
this.Page.Header.Controls.Add(description);
}
GetData Table
private DataTable GetData(string page,string location)
{
string query = "SELECT Title, Description, Keywords FROM MetaTags WHERE LOWER(Page,Location) = LOWER(@Page,@Location)";
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Page", page);
cmd.Parameters.AddWithValue("@Location", location);
cmd.Connection = con;
sda.SelectCommand = cmd;
DataTable dt = new DataTable();
sda.Fill(dt);
return dt;
}
}
}
}
Database:
Am trying this code.
1 Answer
1
Use Page.MetaKeywords
like this link
Page.MetaKeywords
Page.Title = "Your Page Title";
Page.MetaDescription = "Your Page Description";
Page.MetaKeywords = "Your Page Keywords";
And for URL rewriting use this tutorial
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.