C# 检查元数据并添加(如果不存在)和修改(如果使用C)元数据的解决方案#

C# 检查元数据并添加(如果不存在)和修改(如果使用C)元数据的解决方案#,c#,asp.net,C#,Asp.net,我正在开发一个C#.NET控件,它将规范url写入页面的元数据 要编写的代码: 我们正在使用的代码的jist如下所示,并且运行良好 private void setCanonicalURL(string href) { HtmlLink link = new HtmlLink(); link.Href = href; link.Attributes.Add(HtmlTextWriterAttribute.Rel.ToString().ToLower(), "canonic

我正在开发一个C#.NET控件,它将规范url写入页面的元数据

要编写的代码:

我们正在使用的代码的jist如下所示,并且运行良好

private void setCanonicalURL(string href)
{
    HtmlLink link = new HtmlLink();
    link.Href = href;
    link.Attributes.Add(HtmlTextWriterAttribute.Rel.ToString().ToLower(), "canonical");
    Page.Header.Controls.Add(link);
}
我们面临的一个新问题是,在我们无法控制模板的站点上使用此控件。有时,其他模板或控件正在编写规范元数据


我想做的是检查头部,看看是否有一个规范链接,如果有修改它。如果不存在,请添加它,但我找不到任何关于如何执行此操作的文档。我一直在使用
页面.Header进行调查,但运气不太好。

您有多确定您的代码将最后运行,并且不会有稍后执行的代码会更改规范的Header?老实说,不太确定。我曾考虑在Render上运行此功能,但不清楚这会如何影响性能。