Kes,
Here is a very common scenario where you DON"T want the connection to close
(even the logical connection, not the pooled physical connection).
Say you have a hierarchical dataset taht you are trying to save. DataAdapter
cannot do that job for you, you have to resort to your commands. In that
circumstance, you want a number of Command.ExecuteScalar, or NonQuery to
execute, and stay on the same transaction.
In that circumstance it makes sense that the connection not be closed,
because you need to stick with the same underlying physical connection (so
you can keep a hold of it).
Secondly, all Command.Execute* expect an open connection. Why should
ExecuteScalar be non-standard?
Now if you'd argue that there should be a non default overload that accepts
a parameter, that makes it work like a DataAdapter.Fill operation - I can
probably agree to that, but you can easily emulate that in your Data Layer
anyway.
- Sahil Malik [MVP]
ADO.NET 2.0 book -
http://codebetter.com/blogs/sahil.ma.../13/63199.aspx
----------------------------------------------------------------------------
"WebBuilder451" <(E-Mail Removed)> wrote in message
news:21611E5F-3F58-43C7-B27C-(E-Mail Removed)...
> there's a lot i don't know concerning ado.net, so please show me how to do
> this.
> why is there one for a datareader
> i'm returning datareaders via functions and the
> commandbehavior.closeconnection
> means i can use RETURN cmd.executereader(commandbehavior.closeconnection)
> i can't do the same with executescaler. I'm setting a variable, closing
> the
> connection and returning the variable.
> thanks
> kes
> --
> thanks (as always)
> some day i''m gona pay this forum back for all the help i''m getting
> kes
>
>
> "Sahil Malik [MVP]" wrote:
>
>> Why "it should"?
>>
>> - Sahil Malik [MVP]
>> ADO.NET 2.0 book -
>> http://codebetter.com/blogs/sahil.ma.../13/63199.aspx
>> ----------------------------------------------------------------------------
>>
>> "William (Bill) Vaughn" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>> > No it doesn't and it SHOULD (IMHO).
>> >
>> >
>> > --
>> > ____________________________________
>> > William (Bill) Vaughn
>> > Author, Mentor, Consultant
>> > Microsoft MVP
>> > www.betav.com/blog/billva
>> > www.betav.com
>> > Please reply only to the newsgroup so that others can benefit.
>> > This posting is provided "AS IS" with no warranties, and confers no
>> > rights.
>> > __________________________________
>> >
>> > "Sahil Malik [MVP]" <(E-Mail Removed)> wrote in message
>> > news:e$(E-Mail Removed)...
>> >> No it doesn't.
>> >>
>> >> --
>> >>
>> >> - Sahil Malik [MVP]
>> >> ADO.NET 2.0 book -
>> >> http://codebetter.com/blogs/sahil.ma.../13/63199.aspx
>> >> -------------------------------------------------------------------------------------------
>> >>
>> >> "WebBuilder451" <(E-Mail Removed)> wrote in
>> >> message news:3D41865C-680D-4A70-9999-(E-Mail Removed)...
>> >>> does the cmd.ExecuteScalar() auto close the connection the same as
>> >>> RxecuteReader(commandbehavior.CloseConnection)?
>> >>>
>> >>> --
>> >>> thanks (as always)
>> >>> some day i''m gona pay this forum back for all the help i''m getting
>> >>> kes
>> >>
>> >>
>> >
>> >
>>
>>
>>