zoukankan
html css js c++ java
也谈UpdatePanel与UrlRewrite一起work时出现Form Action属性的问题
首先感谢老赵写了一篇文章,
http://www.cnblogs.com/JeffreyZhao/archive/2006/12/27/604373.aspx#post
其实出现这个问题,根本不是MS Ajax的失误,完全是我们没有用好URLRewrite这个东西的原因。
老赵的解决方法是重写了一个Form类,把原来的Form的Action给清空了。
能否正常工作我不知道,但是我认为“清空”,“利用默认属性”这样一类的做法是很危险的。~~~
重写Form类的,引用也有点麻烦,我觉的重写一个Page,比较方便。我在
www.365rss.cn
中的做法如下:
using
System;
using
System.IO;
using
System.Web;
using
System.Web.UI;
namespace
okpower.Utility
{
/**/
///
<summary>
///
URLRewrite 页面基类
///
作者:Kai.Ma
http://kaima.cnblogs.com
///
</summary>
public
class
URLRewritePage : Page
{
public
URLRewritePage()
{
}
protected
override
void
Render(HtmlTextWriter writer)
{
writer
=
new
FormFixerHtmlTextWriter(writer.InnerWriter);
base
.Render(writer);
}
}
internal
class
FormFixerHtmlTextWriter : System.Web.UI.HtmlTextWriter
{
private
string
_url;
internal
FormFixerHtmlTextWriter(TextWriter writer)
:
base
(writer)
{
_url
=
HttpContext.Current.Request.RawUrl;
}
public
override
void
WriteAttribute(
string
name,
string
value,
bool
encode)
{
//
如果当前输出的属性为form标记的action属性,则将其值替换为重写后的虚假URL
if
(_url
!=
null
&&
string
.Compare(name,
"
action
"
,
true
)
==
0
)
{
value
=
_url;
}
base
.WriteAttribute(name, value, encode);
}
}
}
以后继承这个URLRewritePage就可以了,甚至可以进web.config设置,一劳永逸。
欢迎交流
本博客所有随笔,若未明确标示为转载或未带有原文链接,皆为原创。
本博客所有随笔版权归博客园和kai.ma所有,欢迎转载,转载请保留:
出处:http://kaima.cnblogs.com
作者:kai.ma
查看全文
相关阅读:
collections queue、os、datetime,序列化(json和pickle)模块
re模块和正则
模块介绍
迭代器,生成器,生成器表达式,常用内置方法
交互式shell和非交互式shell的区别
/usr 的由来及/usr目录结
Hadoop
联通、联在中文机器上乱码问题
正斜杠与反斜杠
java中static关键字解析
原文地址:https://www.cnblogs.com/kaima/p/604758.html
最新文章
110.Balanced Binary Tree
109.Convert Sorted List to Binary Search Tree
108.Convert Sorted Array to Binary Search Tree
107.Binary Tree Level Order Traversal II
day_5.5 单例
day_5.04py
day_5.02 py
day_4.30 py
day_4.28 py
day_4_27 py
热门文章
day_4_25 py
day_4_24 py
day_4.23 简易计算器
day_11py学习
数据库之表关系,一对多、多对多、一对一(外键,级联更新级联删除)
数据库之表的字段类型
数据库之约束条件
存储引擎,创建表的完整语法
并发编程之进程1
类和对象
Copyright © 2011-2022 走看看