使用 Visual Studio 2012
System.Web.UI.MasterPage
Sitefinity 5.*在命名空间中定义了一些扩展方法Telerik.Sitefinity.Web.UI
。
如果我包含对该命名空间的引用,我可以使用一种特定的扩展方法来指示页面正在正常呈现,或者由内部搜索引擎呈现:
using Telerik.Sitefinity.Web.UI;
namespace MyWebApp
{
public partial class MyMasterPage : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
/// hide common page elements.
/// GetIndexRenderMode() returns "Normal" if the page is being rendered
/// normally, but not if the search engine is indexing the page.
if (this.GetIndexRenderMode() != IndexRenderModes.Normal)
{
headerPlaceholder.Visible = false;
footerPlaceholder.Visible = false;
navigationPlaceholder.Visible = false;
}
}
}
}
但是,如果我this
从if(...)
语句中删除,编译器将不再找到扩展方法。
是什么赋予了?this
除了解决类成员和接口成员或参数之间的歧义之外,我以前从未见过有必要的情况。