日历归档 |
|
<< < 2024 - 11 > >> | Su | Mo | Tu | We | Th | Fr | Sa | | | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
|
|
|
About Me |
|
|
ZhangSichu |
|
Male |
|
32 |
|
ZhangSichu@gmail.com |
|
ZhangSichu@hotmail.com |
|
ZhangSichu.com |
|
weibo.com/zhangsichu |
|
|
|
个人推荐 |
|
|
|
|
分类归档 |
|
|
|
|
My Friends |
|
|
|
|
Asp.Net 应用小结
|
1. VS2005调试JavaScript脚本 (1)IE - Tools - Options - Advanced 清除两个选项: - Disable Script Debugging (Internet Explorer) - Disable Script Debugging (Other)
(2)VS2005 IDE - F5 to run the ASP.NET program.或者用IE浏览个画面,然后用Ctrl+Alt+P Attach IE这个Process. (3)VS2005 IDE - Ctrl-Alt-N to show the the Script Explorer 得到Render后的Html Source. (4)IE - View - Script Debugger - Open (5)IE - View - Script Debugger - Break at Next Statement 此后,操作Web Page,有脚本执行时,VS2005 IDE中就会显示脚本,可以单步执行、查看变量值等。
2.停止页面缓存 在一个可输入数据的Aspx Page中,用户输入新的数据内容并提交, 并跳转到新的Page,之后,如果在URL栏输入刚才那个输入画面的URL,可能发现数据内容还是原先输入修改之前的旧数据。为防止这一点,可以使用如下代码避免IE缓存: protected override void OnInit(EventArgs e) { Response.CacheControl = "no-cache"; base.OnInit(e); }
3.ViewState存放不可序列化对象 ViewState中只能保存可以序列化的实例,可是ADO.NET的DataRow不能序列化,但是有时又需要放在ViewState中。 有一个变通方法: (1)存:将DataRow实例的ItemArray属性放进ViewState 取:先用DataTable.NewRow得到一个新的DataRow实例,再设置其ItemArray属性值为Session或者ViewState中的变量内容,即可"还原"出那个DataRow。 存:this.ViewState.Add(viewStateKeyNameUser,JobWebContext.User.User.ItemArray); 取:USERRow user = (USERRow)(new USERDataTable()).NewRow(); user.ItemArray = (object[])this.ViewState[viewStateKeyNameUser]; (2)写一个包装器存DataTable.DataTable可以被序列化。将DataRow放入DataTable。存DataTable到ViewState. 存:this.ViewState.Add(viewStateKeyNameUser,uer.Table);//uer 是一个USERRow. 取:((USERDataTable)this.ViewState[viewStateKeyNameUser]).Rows[0];
4.Useful tag. (1) input html control close/open style=”ime-mode:active”. (2) control the text box paste onbeforepaste="" paste ="".
|
|
|
|
|
|