You can't initialise variables inside a try..catch block and then use them
outside of that block. Simply because not everything within try{} or
catch{} is guaranteed to be executed, so when you reach the other side of it
(your 'return author' line), that variable might not have been assigned.
Initialise it before the try{} block and you should be fine.
Jim
> -----Original Message-----
> From: Curtis Koppang [mailto:[EMAIL PROTECTED]]
> Sent: 19 April 2002 15:01
> To: [EMAIL PROTECTED]
> Subject: [DOTNET] Use of unassigned local variable
>
>
> I get the "use of unassigned local variable 'author'" error on the
> following line of code...
>
> try
> {
> cn.Open();
> dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess);
> author = new Author(dr);
> }
> finally
> {
> cn.Close();
> }
>
> return author;
>
> But not on the following code.
>
> cn.Open();
> dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess);
> author = new Author(dr);
> cn.Close();
>
> return author;
>
> Why would the two be considered different?
>
> Tx,
> curt
>
> You can read messages from the DOTNET archive, unsubscribe
> from DOTNET, or
> subscribe to other DevelopMentor lists at http://discuss.develop.com.
>
You can read messages from the DOTNET archive, unsubscribe from DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.