网页教学网
 当前位置: 网页教学网 >> 网络编程 >> ASP.NET编程技术 >> 经验分享:.net这样做可能会更好
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

经验分享:.net这样做可能会更好

http://www.webjx.com  更新日期:2007-09-17 07:54  出处:网页教学网  作者:

  今天开始写后台的处理程序了,有几个体会。

  编译后的cs文件在体积和速度上都有明显的缩小和加快,200多k的源文件压缩以后才不到28k,速度基本是瞬时的。

  注意点:

  1:编译的时候尽量把继承同一个类的或者是处理同一个“对象”的类编译在一起,这样速度会快一点。

  2:样式表文件会被aspx文件的缓存项缓存(如果开启闪屏smartNavigation="true",开启闪屏的话弊病就不说了),效果就会非常明显,当然这是在框架页中体现出来的。

  3:命名空间要非常有规律,否则几百个的class,最后会混的。

  4:要熟练掌握并使用委托处理时间。

  5:明白render,createchildcontrol,prerender的前后次序,这点在创建控件的时候有用。

  6:try..catch的时候捉捕Exception的动作高明一点FileNotFoundException等最好具体一点,推荐从System.ApplicationException派生,而不是System.Exception,应用程序就能够区别由框架引发的异常和由用户引发的异常。(在这点上,相信我,不要相信其他说法的任何文档).

  插曲:如果你的服务出现问题,首先查看的FORM是启动的服务管理,例如Mysql是不是没启动,Apache是不是禁掉了.

  7:注意==和equal是不一样的,string和ToString也是不一样的,清除Session的时候注意最好Remove,不要动不动Abandon,这就要求程序上什么时候创建什么变量都是很清楚的。

  8:每种数据库的执行关键字和分割符号都是不一样的,所以尽量熟悉那些关键字再写,记住,只有一个危险的,就是单引号,其他的都是安全的,熟练使用command对象,@,?,mysql中最好用单引号写sql语句,因为不会被执行。

  9: (插曲)  开始了FHR的第四次升级处理,md,原先的代码好垃圾呀,析构函数居然没关mysql对象,属性管理器也没用好,bs一下所有人。php的开发周期就是短,当前版本V0.04商业豪华版。(注:功能和V1.01商业Beta版没法比,包括后台,1.01是非常大气的,0.04不行呀,YY结束,开始干活),注意:改了FHR_templat的结构和mysql类的析构函数和一些分页,@define了一个变量Admin_Page_List.,某些地方看不顺眼的也修改了一下。对模板的添加也是做了极大的修改(因为我要用)。ps:现在像条狗.

  10.暂无.

1:判断是否是字符型:

  Char.IsNumber(char);
  Char.IsNumber(string,int);

2:错误统一处理:
            public static string OutMess(string[] args){
                int ArgsLength = args.Length;
                string strs = "<font color=red>";
                if(ArgsLength <1) return strs;
                switch(args[0]){
                    case "0":strs=(ArgsLength>1)?args[1]:"<b>操作失败</b>.";break;
                    case "1":strs=(ArgsLength>1)?args[1]:"<b>操作成功</b>.";break;
                    default:strs=(ArgsLength>1)?args[1]:"<b>操作结束</b>.";break;
                }
                strs +="</font>";
                if(ArgsLength>2){
                    strs += "<br/>2秒后跳转到<strong>"+args[2]+"</strong><br>";
                    strs += "<meta http-equiv='refresh' content='2;URL="+args[2]+"' />";
                    strs += "<br/><a href="+args[2]+">点这里直接跳转</a>";
                }
                return     strs;        
            }


3:用户菜单读取xml文档,可以考虑加载到session文件里面,记住,在page_unload的时候
System.Web.HttpContext.Current.Session.Remove(KEY);
OR:
System.Web.HttpContext.Current.Session.Abandon();

4:养成良好的
try{
...
}catch(XXException){
.....
}finally{
....
}
的编程习惯.

5:分开数据层和控制层.

6:使用变量的时候合理的初始化,以免Null引用.

7:记住:正则很慢.

8:使用列表控件如Repater,DataGrid的时候如无需要,一定要把
EnableViewState=false;


9:格式数据(DataFormatString):
DataFormatString="xxxxxx.aspx?ID={0}";


10:如果你的存储过程老是提示什么"xx旁边有语法错误",可能是由于你declare的参数的长度不够!

11:强制结束进程:
ntsd -c q -p PID


12:数据库日志缩小
DUMP TRANSACTION 你的数据库名 WITH NO_LOG
BACKUP LOG 你的数据库名 WITH NO_LOG
DBCC SHRINKDATABASE(你的数据库名)
EXEC sp_dboption '你的数据库名', 'autoshrink', 'TRUE'


13:验证double数据可以用:

^([0-9]+)[\.]?([0-9]*)(([E|e]{1}[\-]?)?([0-9]+))?$

ValidationExpression="^([0-9]+)([\.]?([0-9]+))?(([E|e]{1}[\-]?)?([0-9]+))?$"


其他待等.
关键词:.NET
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为
站内搜索
相关文章
推荐文章