当前位置:编程学习 > C#/ASP.NET >>

大家一块讨论一下在asp.net开发中程序员应该注意和提高的技能,在进行asp.net开发中常遇到的问题和解决方法

如题,发起这个讨论,希望大家能把自己的经验分享一下。 --------------------编程问答-------------------- 题目太宽了~ --------------------编程问答-------------------- 1.不要滥用tostring,特别有些新手动不动主tostring
2.建议正式网站开发要使用"WEB应用程序"而不是网站,应用程序比网站好得多,用了就知道
3.页面的文件名尽量不要使用敏感的词,如view.aspx,login.aspx之类不要用,否则发布后容易出现莫名期秒的错误
4.脚本发尽量的HTML源里写上,不要动不动就在服务端代码attribute.add
........还有很多..Z



------------CSDN竹子专享签名功能----------------------------------------------------------------------------------------------------------
◆如果问题解决,请结贴,谢谢!
◆不知道怎么结贴?请单击我
◆如有仍有其它问题,请继续顶贴。
◆表跟竹子要QQ,不开QQ已经好几年了,改用Google Talk。
----------------------------------------------------------------------------------------------------------------------------------------- --------------------编程问答-------------------- 我说一个超简单超实用的

<compilation debug="false">

发布后可以大大提高程序的性能 --------------------编程问答-------------------- 竹子很牛哈 --------------------编程问答-------------------- 听听猩猩们的没错 --------------------编程问答-------------------- 不要动不动就用gridview,datalist,formview之类的巨型控件,这些巨型控件很耗资源的.




------------CSDN竹子专享签名功能----------------------------------------------------------------------------------------------------------
◆如果问题解决,请结贴,谢谢!
◆不知道怎么结贴?请单击我
◆如有仍有其它问题,请继续顶贴。
◆表跟竹子要QQ,不开QQ已经好几年了,改用Google Talk。
----------------------------------------------------------------------------------------------------------------------------------------- --------------------编程问答-------------------- ispostback
新手杀手 --------------------编程问答-------------------- 都不能够用了,那用什么?
兄台。。。 --------------------编程问答-------------------- 那就改写ASP了,哈—
主要据性能的要求吧,要是小网站,还是实现功能就可以了。
当然要是能兼顾性能最好了。
--------------------编程问答-------------------- 我有点不同意 2 楼的部分建议。
有的网络文章说,最好用tostring;
其他的没什么意见。呵呵 --------------------编程问答-------------------- 我有点不同意   2   楼的部分建议。 
有的网络文章说,最好用tostring; 
其他的没什么意见。呵呵
=============================
理由是什么?
--------------------编程问答-------------------- 俺也提一条:坚持查询、阅读E文MSDN,好处多多!

注:俺也用金山词霸,哈 --------------------编程问答-------------------- 找个项目做做! --------------------编程问答-------------------- QUOTE:我有点不同意   2   楼的部分建议。
有的网络文章说,最好用tostring;
其他的没什么意见。呵呵
---------------------------------
关于这个问题,孰是孰非真说清楚,看个人习惯了.



┍┥CSDN竹子专享签名功能┝━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┑
│◆如果问题解决,请结贴,谢谢!                                                      │
│◆不知道怎么结贴?请单击我。                                                       │
│◆如有仍有其它问题,请继续顶贴。                                                     │
│◆表跟竹子要QQ,不开QQ已经好几年了,改用GOOGLE TALK。                                   │
┕━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┙ --------------------编程问答-------------------- 1.不要滥用tostring,特别有些新手动不动主tostring 
说明原因
string test="";
for(int i=0;i<10000;i++)

test = test + i;
 }

string test="";
for(int i=0;i<10000;i++)
{
test = test + i.ToString();             
}
这两个谁高 --------------------编程问答-------------------- 我来说下吧
LikeCode 我来说下它的好处吧!!
"建议正式网站开发要使用"WEB应用程序"而不是网站,应用程序比网站好得多,用了就知道"

这个建错的话,在.net2.0 那调试程序就不好办了.在多层开发中.转到别的层.如果用网站它只转到元数据那儿去了.对程序的重构代来不利.当然,这只是在vs2005不加插件的情况下说的.若用ReSharp 这种插件就没有什么影响了.哈哈~~~

不知LikeCodek兄,我说的对不对啊???? --------------------编程问答-------------------- TO 15#
我用前者,tostring的事让编译器自己去做.


TO catvv,我不太了解WEB应用程序与网站的内在区别,我注意的是,用应用程序发布的DLL只有一个固定的名,而网站则是随机,很乱,很多个DLL,应用程序还可以轻易人修改自生成的代码,而网站就不好办.你说的,嘿嘿,偶太菜,不太了解




┍┥CSDN竹子专享签名功能┝━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┑
│◆如果问题解决,请结贴,谢谢!                                                      │
│◆不知道怎么结贴?请单击我。                                                       │
│◆如有仍有其它问题,请继续顶贴。                                                     │
│◆表跟竹子要QQ,不开QQ已经好几年了,改用GOOGLE TALK。                                   │
┕━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┙ --------------------编程问答-------------------- 里面的控件都太大了
有些功能其实不需要这么复杂 --------------------编程问答-------------------- "3.页面的文件名尽量不要使用敏感的词,如view.aspx,login.aspx之类不要用,否则发布后容易出现莫名期秒的错误 "
有些词运行时没问题.发布生成dll时出现问题.还有为了安全性.如后能登陆不要放在admin/admin.aspx 或manage.aspx etc.
还是同楼LikeCode!!!

4.脚本发尽量的HTML源里写上,不要动不动就在服务端代码attribute.add 

也支持.
细心的话,看看gridview 没数据时.表头不存在html代码不解析什么.但在datagird没数据时 就有表头.gridview没表头是不好点.但用复杂控件时,性能要考虑!!
还是同楼LikeCode!!!


--------------------编程问答-------------------- 尽量用英文注释以提高英语水平,这个没人说过把,哈哈 --------------------编程问答-------------------- 1, 比如要尽可能少的使用服务器端控件
2, 在使用分页时 要尽量的使用分页存储过程 而不是直接使用分页控件
3, 对获取时业务逻辑复杂的数据要采用缓存
4, 对css的利用

还有等等

还要了解asp.net页面的运行机制,这有助于提高程序的性能

楼下继续 --------------------编程问答-------------------- 关注,学习 --------------------编程问答-------------------- 我是asp.net的新手,我最头疼的就是客户端功能,觉得javascript运用的不好,但是有些功能又非得它不可,所以往往不是得心应手,很痛苦!前段时间看到篇帖子说asp.net很辛苦,要懂得很多东西。深有同感啊!建议多理解下前台后台的联系,以及运用的工具。否则很郁闷~ --------------------编程问答-------------------- 1.不要滥用tostring,特别有些新手动不动主tostring   
说明原因 
string   test=""; 
for(int   i=0;i <10000;i++) 
{   
test   =   test   +   i; 
  } 
和 
string   test=""; 
for(int   i=0;i <10000;i++) 

test   =   test   +   i.ToString();                           

这两个谁高
------------------------------------------
string test = string.Empty;
StringBuilder testBuilder = new StringBuilder();
for (int i = 0; i < 10000; i++)
{
    testBuilder.Append(i);
}
test = testBuilder.ToString();

这种情况下,还是这好一点吧。 --------------------编程问答-------------------- to benbendan2

关于字符串拼接与StringBuilder的Append方法滴效率问题,
国外曾有人专门做过测算,还有试验结果图表,
最后滴结论是在特定临界值以下时,字符串拼接效率高,但是内存波动较大,
超过特定临界值后,StringBuilder效率更好,内存分配更加平缓!

所谓“特定临界值”与试验环境和条件有很大关系,不好一概而论! --------------------编程问答-------------------- o --------------------编程问答-------------------- QUOTE:尽量用英文注释以提高英语水平,这个没人说过把,哈哈
-------------------------------------
哈哈,这话不错,英文烂就自己看得懂,哈哈,好好好!



--------------------编程问答-------------------- QUOTE:哈哈,这话不错,英文烂就自己看得懂,哈哈,好好好! 
--------------------------------------
汗~~~

建议用中英文双语注释,哈

另,千万不要用汉语拼音或自定义滴缩写做标识符,
至少装个金山词霸查一下也好呀! --------------------编程问答--------------------
 偶刚入门...

   只有顶了...前辈门,继续... --------------------编程问答-------------------- 不浮躁,稳住心. 多看看底层实现,了解相关机制. --------------------编程问答-------------------- 1.不要滥用tostring,特别有些新手动不动主tostring       
说明原因   
string       test="";   
for(int       i=0;i   <10000;i++)   
{       
test       =       test       +       i;   
    }   
和   
string       test="";   
for(int       i=0;i   <10000;i++)   
{   
test       =       test       +       i.ToString();                                                       
}   
这两个谁高 
------------------------------------------ 
string   test   =   string.Empty; 
StringBuilder   testBuilder   =   new   StringBuilder(); 
for   (int   i   =   0;   i   <   10000;   i++) 

        testBuilder.Append(i); 

test   =   testBuilder.ToString(); 

这种情况下,还是这好一点吧。
------------
答非所问,随不知道,对大字符串(据说是大于225字符)用StringBuilder高的啊,我举的例子只在于说明ToString()的性能 --------------------编程问答-------------------- 我都用服务器控件,太方便了 --------------------编程问答--------------------  
等 级:
 发表于:2008-01-12 14:07:2132楼 得分:0 
我都用服务器控件,太方便了 
  --------------------编程问答-------------------- 为什么  要开发 服务器控件??????????
为什么 要 MFC?????????????
为什么 不用源C开发?????? --------------------编程问答-------------------- 太宽了吧,说不清阿 --------------------编程问答-------------------- 新手进来学习一下.. --------------------编程问答-------------------- 那服务器控件是拿来看的? --------------------编程问答-------------------- 技术固然重要,但是应用更加重要,开了个项目外包群53604708,有好的项目设想,合作,方案,或者实践心得,都可以在这里讨论。现在人气很旺,很多高手云集.对技术感兴趣,或者对项目感兴趣的都进来吧.欢迎!  --------------------编程问答-------------------- 我是菜鸟,只提一个:使用SqlParameter防止SQL注入。#_# --------------------编程问答-------------------- 我觉得根据需要来吧。在功能实现上再追求性能吧。
服务器控件多方便。有些东西不同他们搞起来就感觉回到了ASP.. --------------------编程问答-------------------- 又长见识了,呵呵!!! --------------------编程问答-------------------- 尽量不大数据处理逻辑写在后端,要不页面很慢很慢 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- 44楼,不要乱发广告 --------------------编程问答-------------------- 学习了不少。 --------------------编程问答-------------------- 当对某个字符串进行大量的添加操作时,尽量使用StringBuild类而不用String类 --------------------编程问答-------------------- 学习 --------------------编程问答-------------------- 学习~jf --------------------编程问答-------------------- .net的服务器控件是方便 但用多了会让人形成惰性 因为除了.net提供的控件 还有其他的实现办法 什么都用用就知道哪个更适合 --------------------编程问答-------------------- 根据自己的编程习惯特点,对一些常用的控件做一些封装。 一些常用函数也进行封装。比如search.dll sqlhelper.dll ... --------------------编程问答-------------------- System.Collections.Generic.Dictionary<>
这个不错 --------------------编程问答-------------------- 大量的添加操作时 少用+=,使用StringBuilder

禁止不必要的ViewState

不要依赖代码中的异常
因为异常大大地降低性能,所以您不应该将它们用作控制正常程序流程的方式。
如果有可能检测到代码中可能导致异常的状态,请执行这种操作。不要在处理该状态之前捕获异常本身。
常见的方案包括:检查 null,分配给将分析为数字值的 String 一个值,或在应用数学运算前检查特定值。

Javascript,CSS的应用 --------------------编程问答-------------------- 尽量多使用Repater控件,而不要使用DataList, DataGrid, 和 DataView 
--------------------编程问答-------------------- 千万不要学不文学英文,哈哈 --------------------编程问答-------------------- 学习了,想和大家起进步. --------------------编程问答-------------------- 2.建议正式网站开发要使用"WEB应用程序"而不是网站,应用程序比网站好得多,用了就知道 

REALLY? --------------------编程问答--------------------
引用 17 楼 likecode 的回复:
TO 15#
我用前者,tostring的事让编译器自己去做.


TO catvv,我不太了解WEB应用程序与网站的内在区别,我注意的是,用应用程序发布的DLL只有一个固定的名,而网站则是随机,很乱,很多个DLL,应用程序还可以轻易人修改自生成的代码,而网站就不好办.你说的,嘿嘿,偶太菜,不太了解




┍┥CSDN竹子专享签名功能┝━━━━━━━━━━━━━━━━━━━━━……


尽量少用封箱操作 还高手 --------------------编程问答-------------------- 看了楼上各位的,发现我平时有很多没注意到的,幸好网站小,影响不大,以后一定要注意一下咯。 --------------------编程问答-------------------- 服务器控件 不能给绝对的态度不能用,我感觉该用服务器控件就得用。但是要根据需求。例如 updatepanel 只包含一个控件不要包含整个页面还是可以用的。在就是前台现在jquery 这么好用而且兼容几乎所有大牌浏览器。这么好的类库一定要用。 --------------------编程问答-------------------- 学习了,顺便顶上去 --------------------编程问答-------------------- 恩,学习了 --------------------编程问答-------------------- 1.遇到问题不要一个人花巨量时间琢磨,别人早就遇到并解决了;
2.解决方案多参考正规做法,不要满足于实现了就OK了;
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,