引以为戒 .NET开发者常犯的错误2011-05-13.NET开发过程中不是程式的无法运行,就是程式的效率慢的同蜗牛在爬; 这种情况在.NET的新手中尤其常见;我不知道为什么,一些介绍.NET开发的书本里引用的例子代码,也对此问题视而不见,尤其让我郁闷的是一些我喜欢的书也出现了同样的问题。这篇文章不仅对.NET开发者的新手有帮助,同样对哪些有经验,也带来一些启示和参考。他们会遇到什么样的问题?1. 数据库连接超时2. 创建的对象只管用,不管释放3. 调试(Debug)模式下编译后,就用于应用环境中了4. 实际作业模式分享上面的问题就像毒瘤,积累到一定程度就爆发,且影响深远。1.数据库连接超时篇若要知道数据库连接超时问题,先看下面一段代码:[sample-01] Public Shared Function getOEMPN(ByVal psPN As String, ByRef OEMPN As String) As BSResult Dim clsResult As New BSResult Try clsResult.ResultID = -1 Dim dtResult As New DataTable Dim Sql As String = String.Empty Dim clsOraDb As New clsOraClienDb Dim strConn As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString clsOraDb.Open(strConn) ‘这里Open后,后面看不到 clsOraDb.Close Sql = "SELECT SATBMMBRND.OEMPN FRUNO FROM SATBMMBRND WHERE SATBMMBRND.MATNO = :MATNO" Dim params() As racleParameter = {New OracleParameter("MATNO", psPN)} If clsOraDb.FillDataTable(Sql, dtResult, params) = False Then Return clsResult End If If dtResult Is Nothing Then Return clsResult End If If dtResult.Rows.Count > 0 Then OEMPN = dtResult.Rows(0)("FRUNO").ToString() Else OEMPN = "" End If clsResult.ResultID = 1 Return clsResult Catch ex As Exception clsResult.ResultID = -1 Return clsResult End Try End Function