Ciao a tutti, è possibile riprovare l'istruzione che ha generato l'eccezione? Vi spiego il quesito: devo scrivere un file e se il percorso non esiste vorrei creare le directory mancanti nella gestione delle eccezioni e poi riprovare. Vorrei evitare di avere codice ripetuto, come si può fare?

La mia funzione:
codice:
Public Function WriteAllFromString(ByVal pValue As String) As Boolean
    Dim FileWriter As System.IO.StreamWriter

    Try
        'Istanzio l'oggetto stream per la scrittura del file
        '...se il percorso non esiste lo creo nella catch
        FileWriter = New System.IO.StreamWriter(NamePathFile)
        'Questa try l'ho inserita per prova
        Try
            FileWriter.Write(pValue)
            FileWriter.Close()
        Catch ex As Exception
            'L'errore lo gestisco con la catch principale
            Throw
        End Try
    Catch exIO As System.IO.DirectoryNotFoundException
        'Creo la directory dal percorso senza nome file
        System.IO.Directory.CreateDirectory(NamePathFile.Substring(0, NamePathFile.LastIndexOf("\")))
        'Dopo la creazione del percorso vorrei continuare dal punto in cui si è presentata l'eccezione
        '...ma esegue la finally
    Catch ex As Exception
        MsgBox(ex.ToString, MsgBoxStyle.Critical)
        Return False
    Finally
        FileWriter = Nothing
    End Try

    Return True
End Function
Grazie