Also ich pinge den Server vorher an. Dazu extrahiere ich die
SQL-Server Adresse aus dem Connectionstring und bete, das der Server Pings auch wirklich beantwortet. Bei meinen Installationen ist das aber i.A. der Fall.
Du kannst aber auch mit der Eigenschaft 'ConnectionTimeout' herumspielen. Letztendlich kann es aber durchaus in Einzelfällen einige Sekunden dauern, bis eine Verbindung zustande kommt. Insofern frickelst du vielleicht an der falschen Stelle herum.
Ich würde einfach einen Dialog anzeigen '
DB-Verbindung zu xxx.xxx.xxx.xxx wird aufgebaut' oder irgendwie so.
Was kann der Anwender eigentlich so alles mit deiner Anwendung anstellen, wenn noch keine Verbindung zustande gekommen ist? Nicht viel, denke ich und insofern ist das Auslagern in einen Thread doch überflüssig.