嘿,怎么为每个页面【打预防针】-ASP.NET 中怎样全局实现为每个aspx,html等页面注入一段代码(css,或js)

嘿,怎样为每个页面【打预防针】----ASP.NET 中怎样全局实现为每个aspx,html等页面注入一段代码(css,或js)
本帖最后由 u011321421 于 2014-04-03 18:01:38 编辑
ASP.NET 中怎样全局实现为每个aspx,html等页面注入一段代码(css,或js),通过配置文件或Global文件?

为了节省费用,由于项目是部署在第三方分享主机的,现在有个问题,这个主机商总是在我的页面注入了广告提示语。

我在页面的head节点里通过加入一段css或js可以把它屏蔽掉(最起码不会出现在内容中了),

现在,每一个页面我都要手动加入。

可不可以自动给我的每个页面都注入一段代码呢?怎样实现?



参考案例:(里面是VB)的,我想要C#版本的
ASP.NET: Is it possible to inject CSS or Javascript into every page in my web app? - Stack Overflow
http://stackoverflow.com/questions/10604119/asp-net-is-it-possible-to-inject-css-or-javascript-into-every-page-in-my-web-ap
------解决思路----------------------
你怎来区分“你的每一个页面”?万一有一个页面不是你的呢?

最保险的做法,是写一个ascx,然后拖入你的真正需要的页面。

------解决思路----------------------
   void Application_EndRequest(object sender, EventArgs e)
        {
            Response.Write("你禁用广告的脚本");
        }

试试在你的Global.asax中加入上面代码
------解决思路----------------------
vb.net代码转成C#代码没那么难吧:

        protected void Application_PreRequestHandlerExecute(object sender, EventArgs e)
        {
            Page p = System.Web.HttpContext.Current.Handler as Page;

            if (p != null)
            {
                p.ClientScript.RegisterStartupScript(p.GetType(), Guid.NewGuid().ToString("n"), "document.body.style.backgroundColor = 'red';", true);
            }
        }


在我的测试工程里工作正常。