Comment ajouter une balise meta à ASP.Net page de contenu
j'ai plusieurs pages de contenu accrochées au-dessus d'une page principale. J'ai besoin d'ajouter une balise meta refresh à l'une des pages de contenu, mais je ne vois pas où je peux le faire.
Toute aide serait grandement appréciée.
6 réponses
n'Ont pas essayé avec d'actualisation, mais en général, vous pouvez ajouter une balise meta comme ceci:
var keywords = new HtmlMeta { Name = "keywords", Content = "one,two,three" };
Header.Controls.Add(keywords);
mise à jour: il est possible de cette façon. Vérifier Rick Strahl http://www.west-wind.com/weblog/posts/2006/Aug/04/No-more-Meta-Refresh-Tags
Cette page explique la nouvelle fonctionnalité:ASP.Net 4 ajoute 2 nouvelles propriétés liées aux métabalises à la Page. Ils peuvent être utilisés pour définir des métabalises pour les mots-clés et la description.
Vous pouvez définir dans le code behind:
Page.MetaKeywords = "keyword1, keyword2, keyword3";
Page.MetaDescription = "Example of new meta tag support in ASP.Net 4";
vous pouvez aussi définir la directive @Page:
<%@ Page Language="C#" AutoEventWireup="true"
MetaKeywords="keyword1, keyword2, keyword3"
MetaDescription="Example of new meta tag support in ASP.Net 4"
CodeFile="Default.aspx.cs" Inherits="_Default" %>
la sortie de l'une ou l'autre de ces méthodes rend html similaire à ce qui suit:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
ASP.NET 4 Meta Tag Support
</title>
<meta name="description" content="Example of new meta tag support in ASP.Net 4" />
<meta name="keywords" content="keyword1, keyword2, keyword3" />
</head>
<body>
</body>
</html>
protected void Page_Load(object sender, EventArgs e)
{
Page.Title = "Title of page";
HtmlMeta tag = new HtmlMeta();
tag.Name = "description";
tag.Content = "description of page";
Header.Controls.Add(tag);
HtmlMeta tagKeyword = new HtmlMeta();
tagKeyword.Name = "keywords";
tagKeyword.Content = "keywords of page";
Header.Controls.Add(tagKeyword );
}
( url source)
ajouter le code ci-dessous dans la page du concepteur
<meta id="metaDescription" runat="server" name="Description" />
Maintenant, ajoutez le code ci-dessous à votre .cs page
Page.MetaKeywords = "keyword1, keyword2, keyword3";
Page.MetaDescription = "Example of new meta tag";
vous pouvez ajouter un support de place de contenu sur la page principale dans la section head du html. Vous pouvez alors ajouter des choses à cette section de contenu dans votre page de contenu spécifique et il sera produit à l'en-tête de la page.
une façon que j'ai trouvée pour faire ceci (que je n'ai pas vu énuméré ici) était D'avoir un littéral et le remplir avec n'importe quel genre de balises meta que vous voulez. Dans mon cas, j'ai eu besoin de l'utiliser sans page principale, pour avoir Facebook reconnaître une image miniature, le titre, et la description:
<head runat="server">
<asp:Literal runat="server" ID="litMeta" />
...
</head>
Code:
var img = "<meta property=\"og:image\" content=\"thumbnail.jpg\" />";
var title = "<meta property=\"og:title\" content=\"Title\" />";
var desc = "<meta property=\"og:description\" content=\"Description\" />";
litMeta.Text = img + title + desc;