Re: ADO.NET, Sql2K5 - true hack...
Peter Osucha <[email protected]> Tue, 24 Apr 2007 21:29:50 -0400
| Newsgroups | gmane.comp.windows.devel.dotnet.cx |
|---|---|
| Message-ID | <000001c786d9$3865a840$0202a8c0@peterhome> |
Efran, Sorry I overlooked your comment the other day. I understand your comments about the IDataReader - they do make sense. Still, it seemed that there might be a 'normal' method to achieve what I wanted. I also understand that if the underlying code/app design was clearly thought out and 'finalized', then the 'want' I was looking for wouldn't be needed! :-) Thanks for the comments. Peter -----Original Message----- From: Discussion relating to the specifics of the C# and Managed C++ languages [mailto:[email protected]] On Behalf Of Efran Cobisi Sent: Monday, April 23, 2007 9:52 AM To: [email protected] Subject: Re: [DOTNET-CX] ADO.NET, Sql2K5 - true hack... Hi Peter, To me it makes perfect sense the *DataReader does not hold a resultset index state. By design, IDataReader is a forward only reader; it tends to not hold any state while running, in order to achieve the best possible performance. Btw it doesn't hold the active row index neither. HTH, Efran Cobisi http://www.cobisi.com Peter Osucha wrote: > David, > > I fixed the sps this morning - yes, your suggestion was the right one. > However, I'm still hoping for a bit more. Perhaps you have another > suggestion? > > This one sp I'm calling actually returns 4 datasets. So my C# code > processed the first dataset and then goes into this while ( > dr.NextResult ( ) ) loop. Before the loop, I set a counter variable > (loopIdx) to '1' - loopIdx gets incremented each time a 'NextResult' > is found. I then use a Switch() block to act on the specific > NextResult DataSet. It seems like there should be a better way to > check the dataset I'm working with then just using this loopIdx > arrangement where I, as a developer, need to 'remember' the order of > the returned DataSets. > > Peter > > > -----Original Message----- > From: Discussion relating to the specifics of the C# and Managed C++ > languages [mailto:[email protected]] On Behalf Of Peter > Osucha > Sent: Saturday, April 21, 2007 9:01 PM > To: [email protected] > Subject: Re: [DOTNET-CX] ADO.NET, Sql2K5 - true hack... > > Yes, David. Indeed it does. I didn't even think of that. That makes > much more sense. > > Thanks. > > Peter(--;) > > -----Original Message----- > From: Discussion relating to the specifics of the C# and Managed C++ > languages [mailto:[email protected]] On Behalf Of David L. > Penton > Sent: Saturday, April 21, 2007 4:38 PM > To: [email protected] > Subject: Re: [DOTNET-CX] ADO.NET, Sql2K5 - true hack... > > Is there some reason why you can't return an empty resultset in the > cases where there is nothing to return for sets #2 and #3? That seems > like a better thing to do. > > &_david++; > > Peter Osucha wrote: > >> This seems like a true 'hack'. Perhaps someone can give me a better >> way to do this. >> >> I have an SQL2K5 sp that returns up to 3 datasets (before telling me >> to not return more than 1 dataset, please let me know of a better way >> to do this! J). The first dataset is always returned. Due to the >> arguments used to call the sp, there is a chance that the normal >> 'second' dataset won't be returned, the normal 'third' dataset won't >> be returned, or that neither the normal 'second' nor the normal >> 'third' dataset will be returned. >> >> In order to tell in my C# app which dataset I am working with (I keep >> looking for new datasets with a >> >> 'while ( dr.NextResult ( ) ) {}' >> >> block of code), I am using a 'hack' of adding an extra column to the >> returned dataset ('FromTabel1' or 'FromTable2', etc.) so that I can >> check the datareader.GetOrdinal() to see which dataset I am really >> dealing with. >> >> If I have explained well enough what I am doing, can someone please >> provide me a better way to check a returned dataSet for my purpose? >> >> Peter =================================== This list is hosted by DevelopMentorĀ® http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com