Search:
Namespaces
Discussions
.NET v1.1
Feedback
SV: Reusable method in C# to return the results of a Stored Procedure query - Help needed.
Messages
Related Types
This message was discovered on
ASPFriends.com 'ngfx-sqlclient' list
.
=?iso-8859-1?Q?Andr=E9_Colbi=F6rnsen?=
A
DataView
may well be used. Here is an example in VB.Net but I'm sure u
get the drift:
1.' Publicly dim a
DataSet
and a Dataview
Public dstClients As DataSet
Public dvwClients As DataView
2. 'The Function
Public Function BindMasterGrid() As DataView
Dim conFamily As
SqlConnection
= New
SqlConnection
(strConn)
Dim dadClients As SqlDataAdapter
dstClients = New
DataSet
()
Try
dadClients = New
SqlDataAdapter
("mySproc", conFamily)
dadClients.SelectCommand.
CommandType
CommandType
.StoredProcedure
'If you need to use Parameters, do like this
'dadClients.SelectCommand.Parameters.Add("@yrParam",yrValue)
conFamily.Open()
dadClients.Fill(dstClients, "clients")
dvwClients = dstClients.Tables("clients").DefaultView()
Catch exp As Exception
Server.Transfer("error.aspx")
End Try
Return dvwClients
End Function
3. 'Bind the view to a grid
myDataGrid.Source = BindMasterGrid()
myDatagrid.DataBind()
Hth
Regards/Halsningar
Andre Colbiornsen
--------------------------------------
Sonnenburg Communications
Bergsgatan 3,
SE-211 54 Malmö
Sweden
Tel.: +46-(0)40-97 78 80
Fax.: +46-(0)40-97 78 80
Mob.: +46-(0)708-97 78 79
Mail:
Click here to reveal e-mail address
Web.: www.sonnenburg.se
--------------------------------------
B2B Web agency - Specializing on .Net
--------------------------------------
-----Ursprungligt meddelande-----
Från: Phil Winstanley [mailto:
Click here to reveal e-mail address
]
Skickat: den 12 juni 2002 12:58
Till: ngfx-sqlclient
Ämne: [ngfx-sqlclient] Reusable method in C# to return the results of a
Stored Procedure query - Help needed.
Hi,
Im trying to create a reusable method in C# to return the results of a
Stored Procedure query.
Im running in to a little difficulty understanding which Data storage
object I should use to pass the returned information from my query back
through the method to whatever is calling it.
So far I have tried to use an
SqlDataReader
, but this has proved
fruitless as the
SqlDataReader
is Closed before it is returned through
the method: -
Invalid attempt to FieldCount when reader is closed.
Using the below method: -
public static
SqlDataReader
ReturnProjectDataReader()
{
string connectionstring = "user id=xxx;password=yyy;initial
catalog=db_project;data source=ch-cg-db-01;";
SqlConnection
Conn = new
SqlConnection
(connectionstring);
SqlCommand
Cmd = new
SqlCommand
("listallprojects",Conn);
Cmd.
CommandType
=
CommandType
.StoredProcedure;
SqlDataReader
DR;
try
{
Conn.Open();
DR Cmd.ExecuteReader(
CommandBehavior
.CloseConnection);
Conn.Close();
}
finally
{
}
return DR;
}
Im then calling the above code as so: -
SqlDataReader
DR = Acclaim.ProjectManagement.ReturnProjectDataReader();
ProjectList.DataSource = DR;
ProjectList.DataTextField = ("project_name");
ProjectList.DataValueField = ("project_projectID");
ProjectList.DataBind();
What is the best way to achieve what I am trying to do, and why?
All and any help is appreciated.
Plip.
--
Phil Winstanley, Systems Architect.
Acclaim Studios Manchester Limited.
http://www.acclaim.com
--
| [ngfx-sqlclient] member
Click here to reveal e-mail address
= YOUR ID |
http://www.aspfriends.com/aspfriends/ngfx-sqlclient.asp
= JOIN/QUIT
Reply to this message...
Phil Winstanley
Hello Again,
Ok, what I did was follow the suggestions of Kapil Nanchahal, as that =
meant changing the least amount of code - which works fine.
I have another question though, does me having picked a DataReader over =
a
DataView
have any implications?=20
(i.e. could choosing one potentially cause problems down the line?)
Plip.
--
Phil Winstanley, Super Hero.
Acclaim Studios Manchester.
http://www.acclaim.com
--
=A0=20
-----Original Message-----
From: Andr=E9 Colbi=F6rnsen [mailto:
Click here to reveal e-mail address
]=20
Sent: 12 June 2002 12:36
To: ngfx-sqlclient
Subject: [ngfx-sqlclient] SV: Reusable method in C# to return the =
results of a Stored Procedure query - Help needed.
A
DataView
may well be used. Here is an example in VB.Net but I'm sure u =
get the drift:
=A0
1.' Publicly dim a
DataSet
and a Dataview
=A0
=A0=A0 Public dstClients As
DataSet
=A0=A0=A0Public dvwClients As
DataView
=A0
2. 'The Function
=A0
=A0=A0=A0 Public Function BindMasterGrid() As
DataView
=A0=A0=A0=A0=A0=A0=A0 Dim conFamily As
SqlConnection
=3D New =
SqlConnection
(strConn)
=A0=A0=A0=A0=A0=A0=A0 Dim dadClients As
SqlDataAdapter
=A0=A0=A0=A0=A0=A0=A0 dstClients =3D New
DataSet
()
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Try
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 dadClients =3D New =
SqlDataAdapter
("mySproc", conFamily)
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
dadClients.SelectCommand.
CommandType
=3D
CommandType
.StoredProcedure
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0'If you need to use =
Parameters, do like this
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0'dadClients.SelectCommand=
.Parameters.Add("@yrParam",yrValue)
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 conFamily.Open()
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
dadClients.Fill(dstClients, "clients")
=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 dvwClients =3D =
dstClients.Tables("clients").DefaultView()
=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Catch exp As Exception
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
Server.Transfer("error.aspx")
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 End Try
=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Return dvwClients
=A0=A0=A0 End Function
=A0
3. 'Bind the view to a grid
=A0
=A0=A0=A0 myDataGrid.Source =3D BindMasterGrid()
=A0=A0=A0 myDatagrid.DataBind()
=A0
=A0
Hth
Regards/Halsningar
Andre Colbiornsen
Reply to this message...
System.Data.CommandBehavior
System.Data.CommandType
System.Data.DataSet
System.Data.DataView
System.Data.SqlClient.SqlCommand
System.Data.SqlClient.SqlConnection
System.Data.SqlClient.SqlDataAdapter
System.Data.SqlClient.SqlDataReader
Ad
MBR BootFX
Best-of-breed application framework for .NET projects, developed by Matthew Baxter-Reynolds and MBR IT
Copyright © Matthew Baxter-Reynolds 2001-2008. '.NET 247 Software Development Services' is a trading style of MBR IT Solutions Ltd.
Contact Us
-
Terms of Use
-
Privacy Policy
-
www.dotnet247.com