Properties and Object Oriented Database Development with VB.NET 2005 - Using read-only properties to deal with error messages
(Page 4 of 4 )
I already covered read-only properties in the previous section. There exists one more situation where you can use read-only properties flexibly. In my first article, I explained exception handling. Now, I can use exception handling and provide the error messages using a read-only property!
Let us go through the following code first:
Public Class Emp
...
Private m_errMsg As String
...
Public Sub delete(ByVal empno As String)
m_errMsg = ""
Dim cn As New SqlConnection("Data Source=.sql2k5;initial catalog=sample;user id=sa;password=eXpress2005")
Dim cmd As New SqlCommand
Try
With cmd
.CommandText = "delete from sample.dbo.emp where empno='" & empno & "'"
.Connection = cn
.Connection.Open()
.ExecuteNonQuery()
End With
Catch ex As Exception
m_errMsg = ex.Message
Finally
If cmd.Connection.State = ConnectionState.Open Then
cmd.Connection.Close()
End If
cmd.Dispose()
cn.Dispose()
End Try
End Sub
Public ReadOnly Property ErrorMessages() As String
Get
Return m_errMsg
End Get
End Property
End Class
You can observe that I included a separate field to hold error messages. When any exception/error is generated within the method “delete,” the error message is stored in “m_errMsg.” You can check/retrieve the error messages using a read-only property called “ErrorMessages.” The above is simply an example to let you know about other possibilities. You should double check as to whether you really need this type of logic to be implemented in your application.
In this article, I simply wanted to explain the topics of OOPS along with data access. The sample codes given in this article are neither the best in performance nor the best in programming methodologies. My upcoming articles will deal with these aspects.
Any feedback, suggestions, bugs, errors, improvements etc., are highly appreciated at jag_chat@yahoo.com.
| DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware. |