Vss2005|Silverlight教程|jQuery教程|Ajax框架|Asp.net下载教程|VS2008下载安装教程 - Kai.Ma的世界,道法自然
sliverlight教程 Ajax jQuery VS2008 Vss2005
博客园
首页
社区
新随笔
联系
订阅
管理
随笔-69 评论-645 文章-19 trackbacks-13
也谈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设置,一劳永逸。
欢迎交流
posted on 2006-12-27 12:08
Kai.Ma
阅读(2420)
评论(9)
编辑
收藏
网摘
所属分类:
Net 2.0 & ASP.NET & AJAX
评论:
#1楼
2006-12-27 13:11 |
阿不
又是一种办法,不管什么办法,都是改变action的值。
回复
引用
查看
#2楼
2006-12-27 20:28 |
Jeffrey Zhao
:)
回复
引用
查看
#3楼
2006-12-28 14:23 |
阿不
@Kai.Ma
你连续PostBack三次试试看.我的第三次PostBack照样出错.
回复
引用
查看
#4楼
2006-12-28 14:35 |
阿不
似乎在ansypostback的时候,它并不是用这个方法来写action的值的。我的调试结果是这样的。
回复
引用
查看
#5楼
2006-12-28 14:38 |
阿不
OK,no problem ,我原来是直接调用
base.Render(new ActionlessHtmlTextWriter(writer));
不修改writer对象。可它一定要求要修改writer才行。晕
回复
引用
查看
#6楼
2007-01-04 09:58 |
cnlamar[匿名] [未注册用户]
不需要三次,这个方法我一直在用,第2次开始就会错误,原因很简单,aspnetajax的form不是页面上见到的那个.
回复
引用
#7楼
2007-01-05 11:10 |
有容乃大
原来也是用重写了一个Form类,感觉很不方便。非常感谢楼主。
回复
引用
查看
#8楼
2007-11-15 20:44 |
kerry jiang [未注册用户]
OnLoadComplete 里面把path再Rewrite回来
回复
引用
#9楼
2007-12-21 13:22 |
江大鱼
http://www.cnblogs.com/jzywh/archive/2007/12/20/urlrewriteaction.html
回复
引用
查看
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
闪存
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2006-12-27 12:12 编辑过
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索
相关文章:
ASP.NET实用技巧(一)
ASP.NET跨页面传值技巧总结
关于IE问题,请教和求救
UpdatePanel终于可以上传文件了!
jQuery与ASP.NET AJAX可以同时使用吗?
为什么VS08对ASP.NET AJAX的智能提示这么慢?
ASP.NET之父强烈推荐的ASP.NET AJAX著作
ASP.NET之父SCOTT GUTHRIE强烈推荐的ASP.NET AJAX著作
相关链接:
所属分类的其他文章:
IE6环境下遭遇winow.location.href=''的跳转bug
AspNetPager,asp.net分页的最终解决方案!
能简单才不简单,仿Flickr.com:基于Flash+jQuery的一次性划选多文件并上传
ASP.NET中上传多文件时,用日期时间命名新文件,这不是个好主意。
Asp.net页面的生命周期之通俗理解
轻量级的Ajax解决方案——DynAjax的JQuery版
轻量级的Ajax解决方案——DynAjax:直接在客户端调用C#类的方法
JQuery资源收集
收藏:悟透JavaScript
呵呵,今天偶然看到了我最早期的商业网站作品
最新IT新闻:
微软发布Silverlight 2 向开源社区示好
金融危机下 IT产业人人自危
微软中国研发集团2009财年校园招聘启动
Silverlight 2正式版SDK可以下载了
IBM扩大研究规模 在上海成立研究院
有问题这里提,承接大型项目
网名:Kai.Ma
常住:北京
原籍:湖南
职业:WEB架构师
QQ:29121937
MSN:kai521(AT)msn.com
中国Ajax论坛
访问“中国Ajax论坛(Google)”
与我联系
发短消息
搜索
随笔分类
ASP.NET MVC Framework(3)
Net 2.0 & ASP.NET & AJAX(16)
Net 3.5 & SilverLight(5)
开发环境(18)
数据库(2)
琐即生活(12)
在线生成网页缩略图(WebSnap)(3)
文章分类
Ajax/JQuery/Javascript(2)
W3C标准开发(1)
道(1)
开发工具/环境设置(2)
开发规范(7)
设计模式(5)
数据结构(1)
数据库(1)
朋友的博客
拓荒者
天行健,君子当自强不自息
重要网站
code.google.com
如果还不知道就去code.google.com看一把
MSDN Code Gallery
积分与排名
积分 - 87757
排名 - 465
最新评论
1. re: RegexDesigner.NET 正则表达式开源工具
现在一直用 Regexbudy。
--Doho
2. re: 再推一款正则表达式测试工具
还有个异常: ************** 异常文本 ************** System.Runtime.InteropServices.ExternalException: 所请求的剪贴板操...
--Doho
3. re: SilverLight开发系列第1步:搭建开发环境
--引用-------------------------------------------------- Kai.Ma: @ColdDog 如果你的VS2008是中文的,就必须安中文版本的Silv...
--tigercopy
4. re: ASP.NET中上传多文件时,用日期时间命名新文件,这不是个好主意。
恩 个人认为用GUID比较合适
如果需要的话 可以用时间来做个第二层的索引
--飞林沙
5. re: c#接口和抽象类的区别
2.接口基本上不具备继承的任何具体特点,它仅仅承诺了能够调用的方法; 这里的继承应该是“抽象类”?? ---------- 可以这样理解,他的意思应该是说这里的接口并没有那种父类和子类的关系 4...
--飞林沙
6. re: Vss2005局域网开发权限设置指南
@我是求学者
A,B作为windows用户,权限太高了,设置低点
--Kai.Ma
7. re: Vss2005局域网开发权限设置指南
我现在也有一个VSS管理的问题,请大家帮忙解决一下。 管理员给A和B两个USER用户分别设置了不同的权限,但是A和B之间可以相互修改权限,怎么才能控制A和B两个用户设置别人的权限呢?望各位帮忙解决一下...
--我是求学者
8. re: 最佳黑色背景的Visual Studio 2005/2008配置-尤其适合开发人员使用
我建议电脑屏幕不要用白色,因为白色对眼睛的刺激是最大的。像整天对着电脑的工作都,也应该注意一下。 其实,只要稍微设置一下,就能让你电脑上的窗口从白花花的颜色变成淡淡的苹果绿。 设置方法有三种如...
--Kai.Ma
9. re: SilverLight开发系列第2步:使用vs2008和Blend 2.5打造Hellow World程序
微软的东西真是垃圾,版本之间极度不兼容
--foxinhongyan
10. re: jquery技巧总结
1.2.3版的jq,我个人总结:display:none的东西,不论后来display属性为什么,jq的事件会丢失
这个bug似乎在1.2.6版本中修复了。
--Kai.Ma
评论排行榜
1. 【下载源码】在线生成网页缩略图.超越Snap.com:WebSnap Beta 1.1 发布。感谢博客园的“萧寒”重写的底层。开源。(142)
2. 团队最近招人,我出的几个笔试题,希望不是“鄙视题”(90)
3. 中国的软件人才是靠挖的(56)
4. 湖南长沙火车站,我为你感到羞愧。(28)
5. ASP.NET中上传多文件时,用日期时间命名新文件,这不是个好主意。(22)
6. 一个典型的数据库操作事务死锁分析(21)
7. 初来乍到,发布一个杀手应用:snap.com的web预览图功能,我给它取名叫“WebSnap”(21)
8. Vss2005局域网开发权限设置指南(19)
9. 轻量级的Ajax解决方案——DynAjax的JQuery版(17)
10. 也说说C#的“异常重抛”(17)