Add Meta title, Meta Description, Meta Keywords dynamically in Header ASP.Net

You can easily get the information from dataset/data reader. You can assign the values to Meta title, Description ,keywords, Browser title one by one according to the code. You can change the order of meta information. But remember, don't use these <% %>  tags in header when you need to add meta tags dynamically. In this case you can use the literal control, otherwise you can get the error "The Controls collection cannot be modified because the control contains code blocks"

 DataSet dsSearchResult = SearchDynamicPage(PrimaryKey_PageUrl,"");
           
            if (dsSearchResult.Tables.Count > 0 &&  dsSearchResult.Tables[0].Rows.Count > 0)
            {

                litContent.Text = dsSearchResult.Tables[0].Rows[0]["LongDesc"].ToString();
                litPageTitle.Text = dsSearchResult.Tables[0].Rows[0]["Title"].ToString();

                if (Convert.ToBoolean(dsSearchResult.Tables[0].Rows[0]["IsActive"]) == true)
                {

                    if (Convert.ToString(dsSearchResult.Tables[0].Rows[0]["Source"]).Length>0)
                    {
                        litSource.Text = "Source:" + Convert.ToString(dsSearchResult.Tables[0].Rows[0]["Source"]);
                    }
                  
                    HtmlMeta metaTitle = new HtmlMeta();
                    HtmlMeta metakeywords = new HtmlMeta();
                    HtmlMeta metaDescription = new HtmlMeta();
                    if (Convert.ToString(dsSearchResult.Tables[0].Rows[0]["MetaTitle"]) != string.Empty)
                    {
                        HtmlMeta objMetaTitle = new HtmlMeta();
                        objMetaTitle.Name = "Title";
                        objMetaTitle.Content = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["MetaKeyword"]);
                        Page.Header.Controls.Add(objMetaTitle);
                        objMetaTitle.Dispose();
                    }
                    if (Convert.ToString(dsSearchResult.Tables[0].Rows[0]["BrowserTitle"]) != string.Empty)
                    {
                        ((Literal)Master.FindControl("litBrowserTitle")).Text = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["BrowserTitle"]).ToString();
                    }
                    else
                    {
                        ((Literal)Master.FindControl("litBrowserTitle")).Text = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["Title"]).ToString();
                    }
                    if (Convert.ToString(dsSearchResult.Tables[0].Rows[0]["MetaDesc"]) != string.Empty)
                    {
                        HtmlMeta objMeta = new HtmlMeta();
                        objMeta.Name = "Description";
                        objMeta.Content = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["MetaDesc"]);
                        Page.Header.Controls.Add(objMeta);
                        objMeta.Dispose();
                    }

                    if (Convert.ToString(dsSearchResult.Tables[0].Rows[0]["MetaKeyword"]) != string.Empty)
                    {
                        HtmlMeta objMeta2 = new HtmlMeta();
                        objMeta2.Name = "Keywords";
                        objMeta2.Content = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["MetaKeyword"]);
                        Page.Header.Controls.Add(objMeta2);
                        objMeta2.Dispose();
                    }
                }
                else
                {
                    if (Convert.ToString(dsSearchResult.Tables[0].Rows[0]["BrowserTitle"]) != string.Empty)
                    {
                        ((Literal)Master.FindControl("litBrowserTitle")).Text = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["BrowserTitle"]).ToString();
                    }
                    else
                    {
                        ((Literal)Master.FindControl("litBrowserTitle")).Text = Convert.ToString(dsSearchResult.Tables[0].Rows[0]["Title"]).ToString();
                    }

                }

Related Alrticles

Add Your Business in Free Listing


FREE!!! Registration