我在IIS7.5中托管了一个MVC Web应用程序。该应用程序是多语言的。例如:
www.myapp.com
www.myapp.ca
www.myapp.mx
www.myapp.co.in
fr.myapp.com
要生成元数据(在我的情况下为URL),我使用以下代码。
var url = helper.ViewContext.HttpContext.Request.Url.ToString();
问题是:
如果我正在浏览,请访问www.myapp.mx,然后在查看视图源时,元标记网址为www.myapp.fr。通过使用上面显示的相同代码生成元标记。大多数情况下,它返回正确的DNS名称,但随机更改。
public static string MetaData(this HtmlHelper helper, string type, params object[] models)
{
var metaTags = new MetaDataBlock();
metaTags.ogSiteName = helper.EncodedResource("MetaSiteName");
metaTags.ogUrl = helper.ViewContext.HttpContext.Request.Url.ToString();
metaTags.fbAppId = helper.EncodedResource("MetaFacebookAppID");
// function to create meta data using String Buider
}
在上述功能中, ogUrl 会发生变化,并指向随机应用端点。
答案 0 :(得分:0)