.NET开发网站过程中易被忽视的问题 admin 2009-7-14 13:46:00 在运用Visiol studio.NET 开发Web 应用程式中,开发者常常会遇到一些问题:如我开发好的程式,在开发环境下测试没问题,怎么一搬到应用环境下,就会有问题? 不是程式的无法运行,就是程式的效率慢的同蜗牛在爬, 这种情况在.NET的新手中尤其常见。我不知道为什么,一些介绍.NET开发的书本里引用的例子代码,也对此问题视而不见,尤其让我郁闷的是一些我喜欢的书,如:<<ADO.NET技术内幕>>,<<ASP.NET2.0高级编程(第4版 )>>,这两本都是清华大学出版社出版的, 有一本书更糟糕<<Visual Basic.Net 专业项目实例开发>>,我建议大家还是不要看了吧,免的浪费时间和精力。 这篇文章不仅对.NET开发者的新手有帮助,同样对哪些有经验,也带来一些启示和参考。 他们会遇到什么样的问题,我不妨总结给大家:1. 数据库连接超时2. 创建的对象只管用,不管释放3. 调试(Debug)模式下编译后,就用于应用环境中了4. 实际作业模式分享 上面的问题就像毒瘤,积累到一定程度就爆发,且影响深远。 一、数据库连接超时篇 若要知道数据库连接超时问题,先看下面一段代码: [Sample-01]:Public Shared Function getOEMPN(ByVal psPN As String, ByRef OEMPN As String) As BSResult0001 Dim clsResult As New BSResult0002 Try0003 clsResult.ResultID = -10004 Dim dtResult As New DataTable0005 Dim Sql As String = String.Empty0006 Dim clsOraDb As New clsOraClienDb0007 Dim strConn As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString0008 clsOraDb.Open(strConn) ‘这里Open后,后面看不到 clsOraDb.Close0009 Sql = "SELECT SATBMMBRND.OEMPN FRUNO FROM SATBMMBRND WHERE SATBMMBRND.MATNO = :MATNO"0010 Dim params() As OracleParameter = {New OracleParameter("MATNO", psPN)}0011 If clsOraDb.FillDataTable(Sql, dtResult, params) = False Then0012 Return clsResult0013 End If0014 If dtResult Is Nothing Then0015 Return clsResult0016 End If0017 If dtResult.Rows.Count > 0 Then0018 OEMPN = dtResult.Rows(0)("FRUNO").ToString()0019 Else0020 OEMPN = ""0021 End If0022 clsResult.ResultID = 10023 Return clsResult0024 Catch ex As Exception0025 clsResult.ResultID = -10026 Return clsResult0027 End TryEnd Function 对上述代码行的部分解释: 0006:引用数据库连接的类; 0008:打开数据库连接; 然后,整个函数你再找不到关闭数据库连接的动作,是要等着操作系统来释放吗? 有人就说啦,看起来好像没有什么大不了的,这仅仅是一个函数而已;数据库打开连接,未关闭不会影响到整个应用程式;果真是这样吗? 让我们谈谈数据库连接的问题,在Oracle数据库里,一般默认的数据库连接数最多也就100多来个,不会超过200个,即使你改变这个连接数,但无论怎样,它的连接数是有限的,不可能无限地供你消耗。 在Web这个程式里,它不仅不会自动关闭数据库连接,象这样的函数还会每次调用,都会重新用掉一个数据库连接;如果象这样的函数很多的话,你就等着一个错误警告页面弹出来,如Database Connection Timeout….等讯息。 这还不算什么,更有甚者,尽然在循环语句里写下面的代码如 : 文章分页: 1 | 2 | 3 | 分享联系我们 扫二维码与项目经理沟通 我们在微信上24小时期待你的声音 感谢您的关注分享“.NET开发网站过程中易被忽视的问题” 烟寒网络真诚为您服务 ,点击客服直接咨询下单. 立即咨询 我们服务 网站建设 高端网站建设服务商、相信品牌力量、相信知名企业;制作后收费13014982176! 微信小程序/微信公众号 微信小程序 背靠10亿流量,不论用户需求是什么,都能被开发使用 一点创意,就能在“社交圈”中脱颖而出。 网站优化/SEO 让您的网站更靠近排名位置,让客户更容易找到您,seo优化是一个漫长过程,整个网站营销花最少的钱起最大的作用。