首页 新闻 会员 周边 捐助

asp.net 三层框架

0
悬赏园豆:5 [已关闭问题] 关闭于 2013-07-30 17:26

运行时出现 webdev.webservice40程序关闭

怎么回事啊

菜鸟的悲伤的主页 菜鸟的悲伤 | 初学一级 | 园豆:20
提问于:2013-07-30 17:16
< >
分享
所有回答(2)
0

它说明你的站点里面存有致命错误。经过断点调试,发现了如下问题: 

 

程序进入了一个死循环,发现由于B层的CategoryManager类中“取出所有新闻类别方法”的名称和D层的CategoryDAO类中的“取出所有新闻类别方法”的名称相同(都为SelectAll()),所以在B层调用D层的方法时将cdao. SelectAll()误写为了SelectAll(),使得B层的public DateTable SelectAll()方法不断的在自己的方法体中又调用了自己,致使程序陷入了死循环。

由于陷入了死循环,导致程序不停的调用堆栈,使得WebDev.WebServer40.exe无法承受,所以一经运行或调试程序,就会使得WebDev.WebServer40.exe立刻停止工作。导致程序调试或运行失败。

  

反思:虽然这是个马虎引起的问题,但也确实说明一个该注意的问题。就是运用分层编程时,同一条线上各层之间的方法名称最好别完全相同,应该加一些前缀或后缀标识会更加安全和规范。

livia_x | 园豆:163 (初学一级) | 2013-07-30 17:26

不好意思啊 没看见你的答复 我就关闭了该帖 因为我把问题找出来了 下次把豆给你补上

支持(0) 反对(0) 菜鸟的悲伤 | 园豆:20 (初学一级) | 2013-07-30 17:30

@Hi丶wyj: 没关系,重点是问题解决了~

支持(0) 反对(0) livia_x | 园豆:163 (初学一级) | 2013-07-30 17:37
0

死循环了

菜鸟的悲伤 | 园豆:20 (初学一级) | 2013-07-30 17:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册