总结一下散乱的开发点滴(4) (高手勿入)
好久没有写BLOG,开发点滴全记在了本地,有时候也忘记去整理它。现在趁大家午睡的时候整理出来吧,也可以让大家提提不同的意见:)
1. 一个方法实现类似htmlencode的方法
return text.replace(/&/g, '&').replace(/\"/g, '"').replace(/</g, '<').replace(/>/g, '>');
}
function HtmlDecode(text){
return text.replace(/&/g, '&').replace(/"/g, '\"').replace(/</g, '<').replace(/>/g, '>');
}
2. 在pl/sql里,如果int1+int2,若其中有一个为null,则结果亦为null,所以应改为
3. as 的类型转换不能适用于值类型,如bool ,int等
4. server.transfer(url, true),第二个参数,为保持页面querystring和form的bool参数为true, eg: server.transfer(url, true),否则将陷入循环提交页面、Server.transfer(Request.RawUrl, true); cpu100%. (即:不能server.transfer(url,true)传送到同一页面文件。有时页面运行时出现asp.net stopped unexpectly的错误,就看看是不是这个原因产生的吧。
5. Context.Handler来实现两个页面切换时保存的页面控件的值
http://msdn.microsoft.com/library/en-us/vbcon/html/vbtskpassingvaluesbetweenwebformspages.asp?frame=true
必须使用server.transfer来进行跳转;且第二个参数不能为true
6. usercontrol等里面出现的JS代码全部归于一个JS文件,能加快页面载入速度
7. 枚举实为一个常量类型,枚举可以直接初始化为整形,如-1;
详见:http://www.cnblogs.com/allenlooplee/allenlooplee/archive/2005/04/29/147356.html
8. 使用dataset.GetXML()得到XML时,全部为NULL的列将不会写入到XML里,所以从XML再转换到DATASET 时,应判断是否存在哪一列,或者,在组成生成dataset的SQL语句中用nvl(num1, '') num1来将为null的数据转为空串或0值
9. oracle: union all和union的区别
10. oracle: null是不会参与到count统计的 count(colIsNull) 为0
COUNT(DISTINCT CASE WHEN B_DATE >= TO_DATE('2005-12-01', 'YYYY-MM-DD') AND
B_DATE <= TO_DATE('2005-12-31', 'YYYY-MM-DD') THEN CLASSID ELSE null END) New_Num
FROM CLASS_TBL
count是整表显示出来后再进行count,而非一条一条进行的
11. C#中的SP参数必须与ORACLE的存储过程参数的顺序一致:
OleDbParameter[] prams = {data.MakeInParam("intIndex", OleDbType.Integer, -1, intIndex),...
12. Response.Redirect(url); 前,我们需要用javascript弹出框弹出信息后再转向:
Page.RegisterClientScriptBlock("key","alert('您有保存过草稿,自动提取您的草稿内容。');");
13. 多行模式的TextBox的maxlength设置没有用;所以这种情况下,必须换一种方法进行长度的判断;
14. oracle里sp,参数不能和字段名同名,养成”p_字段名“传参的习惯
15. 禁止汉字输入的不完全解决方法:style="IME-MODE: disabled; ",拷贝中文入值将同样会输出汉字(有更好的方法吗?又不想屏蔽粘贴的功能);
16. TemplateColumn里面的控件(如Image) 应该为: (Image)_cell.Controls[1],而Controls[0]其实是LiteralControl;
其它列,如hyperlinkColumn, LinkbuttonColumn类似的列,取控件的时候,帽应该为_cell.controls[0]; ----注意索引;
17. 有时模态窗口因为有缓存的存在,使得传不同参数页面仍然保存不变,禁止缓存是好的解决方法:
<META HTTP-EQUIV="expires" CONTENT="0">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
积累开发点滴= 积累经验=积累财富喔。望大家也能分享下自己的小点滴。。多小都可能会解决那些困扰人很久的问题:)
> 总结一下散乱的开发点滴(3) (高手勿入)
> 总结一下散乱的开发点滴(2) (高手勿入)
> 总结一下散乱的开发点滴(高手勿入)