从后面的代码中读取Open Graph的标记内容

时间:2016-10-29 11:11:16

标签: c# asp.net

我需要从后面的代码中读取页眉中的og:image的标记内容。我怎么能这样做?

<meta property="og:image" name="og:image" content="mydomain.com/testing.jpeg" /> 

我想从后面的代码中读取的字符串是“mydomain.com/testing.jpeg”。

2 个答案:

答案 0 :(得分:1)

aspx页面的head标签在服务器上运行&#39;属性集,以便您可以通过编程方式从代码中访问它。

解决您的具体问题:

        var stuffWrapper = this.head.Parent.Controls[0];//("og:image");
        var stuff = ((System.Web.UI.HtmlControls.HtmlMeta)stuffWrapper).Content;

通常,您可以在控件集合上使用.FindControl方法来获取对aspx标记的编程访问。不确定&#39;点缀 - 符号 - 路径&#39;您必须发现允许.FindControl方法起作用。

因此,在这种特定情况下,您必须知道元标记在head标记中的零索引位置。如果您将来重新排序标题中的标记,您的代码将表现不佳。

答案 1 :(得分:0)

您还可以从后面的代码生成元标记。这样你就可以完全控制。

HtmlMeta meta = new HtmlMeta();
meta.Name = "og:image";
meta.Content = "mydomain.com/testing.jpeg";
Page.Header.Controls.Add(meta);