.net编程中常见错误详解_.Net教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:Asp.net三层结构中的变量引用与传递
Asp.net的 三 层架构主要是为了解决数据层,逻辑层,表示层等之间的关系。 我们的做法是这样的:首先建立一个DataCore的基类。基类里面封装了一些低层的数据库的基本操作,比如说数据库联接,调用存储过程等等。在这里面有一个地方值得注意,通过对一个函数

1:command调用存储过程的时候,如果输出是dataset,selectcommand的command对象的connection先要指出,否则catch一辈子也是空的.. 

2:存储过程的varchar字段如果是x.x的这种格式,容易出现细微的傻错误,注意不要漏了[].

3:如果ascx文件的默认服务器控件的事件不重写的话在control控件里面没有自动回送!切记.

4:Page.RegisterOnSubmitStatement在ascx文件中小心使用...

5:viewstate在true的状态下暴涨了许多没用的数据...

6:明确掌握事件的前后次序.,诸如onsubmit和onclick的区别没啥说的...

7:注意page_load和__dopostback的关系,

8:如果在页面动态加载ascx的话,分清楚page_init的要执行的操作,不要滥用用户控件和自定义服务器控件(重点)

9:cs文件框架需要明确,最后集成,定版本好.

10;使用第三方的在线编辑器的话最好使用框架,ok?!

11:多个CS文件编译的时候后面的源不要加逗号就可以了.

12:在第五点中加载的js可以单独开发,在onsubmit中,因为form只有一个ascx很多,

13:系统的错误全部标出错误码(以后可以在xml文档帮助文档中写出,多语言版本可以共用),这想法真好.

14:控件本身用loadcontrol的时候出现不识别page页面的属性,只有在page页面的inhert修改之.

15:注意这个存储过程:

 CREATE proc spage
@pagesize int,
@destpage int
as
set nocount on
declare @id int
declare @startid int
  
select @startid = (@destpage - 1)*@pagesize
  
set rowcount @startid
select @id = id from [crm_articler]
  
set rowcount @pagesize
set nocount off
select * from t_member where id > @id order by id
GO 

execute后面的()有无有莫大关系.

16:别在page_load里面试图修改全局变量,没那功能的.

17:带有不确定性口气的程序没看的必要性。

18:后台使用框架的技巧(style,js,类)布置合理,尽量独立出后台,不依赖前台的部分命名空间或类。

19:可以这样使用:using (context = System.Web.HttpContext.Current)

20:尽量把编译的输出文件简洁+独立,功能是一个模块的就编译成一个文件,但不要把module(usercontrol)和普通的放开,因为UserControl有assembly的问题。

21:磁盘读取xml文件是很慢的,不要老是读取之,可以放入缓存的就放进去。

22:文件读取reader,或者datareader一定要close();

分享:Asp.Net发送电子邮件程序
一、 asp.net 1.0及.net1.1中的做法(利用CDOSYS消息组件发送电子邮件): 代码如下: usingSystem; usingSystem.Web.Mail; /// summary /// 用到的类主要位于System.Web.Mail命名空间下 /// /summary publicclassSendMail { publicSendMail() { } ///summary

来源:模板无忧//所属分类:.Net教程/更新时间:2012-06-12
相关.Net教程