在发送到客户端之前,是否有任何页面事件可以挂接到整个呈现页面内容上的字符串替换?
UPDATE
这是我目前用来完成这个的代码:
protected overrIDe voID Render(HTMLTextWriter writer){ string content = string.Empty; using (var stringWriter = new StringWriter()) using (var HTMLWriter = new HTMLTextWriter(stringWriter)) { // render the current page content to our temp writer base.Render(HTMLWriter); HTMLWriter.Close(); // get the content content = stringWriter.ToString(); } // replace our placeholders string newContent = content.Replace("$placeholder1$","placeholder1 data").Replace("$placeholder2$","placeholder2 data"); // write the new HTML to the page writer.Write(newContent);}解决方法 你试过覆盖渲染方法吗?
protected overrIDe voID Render(HTMLTextWriter writer){ StringBuilder HTMLString = new StringBuilder(); // this will hold the string StringWriter stringWriter = new StringWriter(HTMLString); HTMLTextWriter tmpWriter = new HTMLTextWriter(stringWriter); Page.Render(tmpWriter); writer.Flush(); writer.Write(DoReplaceLogic(HTMLString.ToString()););}总结
以上是内存溢出为你收集整理的c# – 如何在输出之前修改整个ASP.NET页面内容?全部内容,希望文章能够帮你解决c# – 如何在输出之前修改整个ASP.NET页面内容?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)