Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

GetStoredProcCommand need to create in class DBAccess namespace Namespace CustomerList.DAL

Posted on 2007-03-27
1
1,361 Views
Last Modified: 2008-01-09
GetStoredProcCommand not working.

C:\SourceControl_mcupryk\InHouseDev\APPS\MKT0003 - CustomerList\src\CustomerList\App_Code\BOL\Division.vb(261,0): error BC30456: 'GetStoredProcCommand' is not a member of 'CustomerList.DAL.DBAccess'.

C:\SourceControl_mcupryk\InHouseDev\APPS\MKT0003 - CustomerList\src\CustomerList\App_Code\BOL\Division.vb(264,0): error BC30311: Value of type 'System.Data.Common.DbCommand' cannot be converted to 'String'.

Dim db As DAL.DBAccess = New DAL.DBAccess


Try

'We get the divisions

cmd = db.GetStoredProcCommand("PARAM_TWD.dbo.usp_GetDivisions")

'Temporarilly put the results in a dataset so we can check for valid data

tmpds = db.ExecuteDataSet(cmd)

'We must ensure that only one table was returned in the execution of the query

If tmpds.Tables.Count.Equals(1) Then



My module



Namespace CustomerList.DAL

Public Class DBAccess

Private cmd As IDbCommand = New SqlCommand()

Private handleErrors As Boolean = False

Private strLastError As String = ""

Private strConnectionString As String = ""

Public Sub New()

Dim objConnectionStringSettings As ConnectionStringSettings = ConfigurationManager.ConnectionStrings("connectionstring")

strConnectionString = objConnectionStringSettings.ConnectionString

Dim cnn As New SqlConnection()

cnn.ConnectionString = strConnectionString

cmd.Connection = cnn

cmd.CommandType = CommandType.StoredProcedure

End Sub

Public Function ExecuteReader() As IDataReader

Dim reader As IDataReader = Nothing

Try

Me.Open()

reader = cmd.ExecuteReader(CommandBehavior.CloseConnection)

Catch ex As Exception

If handleErrors Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return reader

End Function

Public Function ExecuteReader(ByVal commandtext As String) As IDataReader

Dim reader As IDataReader = Nothing

Try

cmd.CommandText = commandtext

reader = Me.ExecuteReader()

Catch ex As Exception

If (handleErrors) Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return reader

End Function

Public Function ExecuteScalar() As Object

Dim obj As Object = Nothing

Try

Me.Open()

obj = cmd.ExecuteScalar()

Me.Close()

Catch ex As Exception

If handleErrors Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return obj

End Function

Public Function ExecuteScalar(ByVal commandtext As String) As Object

Dim obj As Object = Nothing

Try

cmd.CommandText = commandtext

obj = Me.ExecuteScalar()

Catch ex As Exception

If (handleErrors) Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return obj

End Function

Public Function ExecuteNonQuery() As Integer

Dim i As Integer = -1

Try

Me.Open()

i = cmd.ExecuteNonQuery()

Me.Close()

Catch ex As Exception

If handleErrors Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return i

End Function





Public Function ExecuteNonQuery(ByVal commandtext As String) As Integer

Dim i As Integer = -1

Try

cmd.CommandText = commandtext

i = Me.ExecuteNonQuery()

Catch ex As Exception

If handleErrors Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return i

End Function

Public Function ExecuteDataSet() As DataSet

Dim da As SqlDataAdapter = Nothing

Dim ds As DataSet = Nothing

Try

da = New SqlDataAdapter()

da.SelectCommand = CType(cmd, SqlCommand)

ds = New DataSet()

da.Fill(ds)

Catch ex As Exception

If (handleErrors) Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return ds

End Function

Public Function ExecuteDataSet(ByVal commandtext As String) As DataSet

Dim ds As DataSet = Nothing

Try

cmd.CommandText = commandtext

ds = Me.ExecuteDataSet()

Catch ex As Exception

If handleErrors Then

strLastError = ex.Message

Else

Throw

End If

End Try

Return ds

End Function

Public Property CommandText() As String

Get

Return cmd.CommandText

End Get

Set(ByVal value As String)

cmd.CommandText = value

cmd.Parameters.Clear()

End Set

End Property

Public ReadOnly Property Parameters() As IDataParameterCollection

Get

Return cmd.Parameters

End Get

End Property

Public Sub AddParameter(ByVal paramname As String, ByVal paramvalue As Object)

Dim param As SqlParameter = New SqlParameter(paramname, paramvalue)

cmd.Parameters.Add(param)

End Sub

Public Sub AddParameter(ByVal param As IDataParameter)

cmd.Parameters.Add(param)

End Sub

Public Property ConnectionString() As String

Get

Return strConnectionString

End Get

Set(ByVal value As String)

strConnectionString = value

End Set

End Property

Private Sub Open()

cmd.Connection.Open()

End Sub

Private Sub Close()

cmd.Connection.Close()

End Sub

Public Property HandleExceptions() As Boolean

Get

Return handleErrors

End Get

Set(ByVal value As Boolean)

handleErrors = value

End Set

End Property

Public ReadOnly Property LastError() As String

Get

Return strLastError

End Get

End Property

Public Sub Dispose()

cmd.Dispose()

End Sub

End Class

End Namespace

I have a class that does all my sql stuff.
I need command GetStoredProcCommand(sqlCommand)
in my class dbaccess above
0
Comment
Question by:mathieu_cupryk
1 Comment
 
LVL 2

Accepted Solution

by:
jonshern earned 500 total points
ID: 18805678
It seems like it would be easier just to use the Data Access Application Block in the Enterprise Library.
The execute stored proc, is already defined.

0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In order to hide the "ugly" records selectors (triangles) in the rowheaders, here are some suggestions. Microsoft doesn't have a direct method/property to do it. You can only hide the rowheader column. First solution, the easy way The first sol…
We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

828 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question