Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Datenzugriff mit ADO.NET und .NET Core

Connection-String modifizieren und analysieren mit SqlConnectionStringBuilder

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Die Klasse SqlConnectionStringBuilder dient dazu, einen vollständigen DB-Connection-String aufzubauen, der dank jeder Menge Felder und Methoden ausgesprochen flexibel im weiteren Code verwendet werden kann.
05:09

Transkript

Grade wenn ich mit SQL Server-Authentifizierung arbeite und ein Passwort in meinem Connection String habe, geht es noch ein bisschen besser. Es kann sein, dass dieses Kennwort von einem User eingegeben wird und dann in den Connection String eingesetzt werden muss, und das ist nicht ganz so einfach wie man sich das so vorstellt. Wir haben hier Benutzer jahrelang trainiert, komplexe Kennwörter zu verwenden und plötzlich benutzt jemand ein Semikolon oder ein Gleichheitszeichen und kann sich nicht mehr anmelden, und da man natürlich als Supporter niemals die Anwender nach ihrem Kennwort fragt, wird man sehr lange rätseln, warum 99 Anwender sich anmelden können und ein Anwender dummerweise das Problem hat, dass er einen Fehler bekommt. Deshalb gibt es den ConnectionStringBuilder. Das ist eine Klasse, mit der ich sehr leicht einzelne Connection Strings entweder zusammenbauen kann oder analysieren kann, und das ist etwas, was ich Ihnen jetzt auch definitiv zeigen möchte, damit wir halt auch das Kennwort aus unserem Connection String rausbekommen. So, wir sind wieder zurück im Visual Studio. Das Erste, was ich mache ich gehe jetzt in meine Konfiguration, und entferne hier das Passwort. Da ich jetzt nicht bei jedem Start das Kennwort neu eingeben möchte, gehe ich da natürlich hin und speichere das behelfsweise, wirklich nur behelfsweise, hier als Konstante ab. Ja, das ist ein bisschen zu viel. Der Teil reicht natürlich. So, den Teil möchte ich natürlich dann in meinen Connection String einbauen, deshalb muss ich hingehen und eine neue Klasse nämlich genau die "SqlConnection" Stringbuilder-Klasse verwenden. Letztendlich kann ich auch, wenn ich andere Provider habe, andere Datentypen, dann gibt es entsprechend auch einen ConnectionStringBuilder, der wiederum hat dann andere Eigenschaften, Sie werden es gleich sehen, was ich damit meine. Wenn ich sage "SqlConnectionStringBuilder", dann kann ich jetzt sagen, ich habe einen "ConnectionStringBuilder", den instanziiere ich mit dem schon vorhandenen Connection String, damit teste ich auch gleichzeitig, ob der Connection String formal richtig ist, und wenn es da irgendwelchen formellen Probleme gibt, gibt es an der Stelle direkt eine Exception. Ich könnte jetzt über die Eigenschaften, die ich habe, natürlich nicht diese, sondern von dem hier, kann ich jetzt auf die einzelnen Elemente des Connection Strings zugreifen Sie sehen, Sie können hier "RetryCount", "Timeout" festlegen, Sie können "ApplicationName" festlegen, und so weiter und so fort. Also sehr sehr viele einzelne Tokens, die Sie sonst möglicherweise analysieren müssen, können Sie hier schlicht und ergreifend direkt setzen, unter anderem auch das Kennwort, das Passwort, das setze ich jetzt hier entsprechend so ein, und kann dann im nächsten Schritt hingehen, entweder ich gehe hin und sage "=scsb" "toString" oder was mir besser gefällt, ich rufe einfach die Connection String-Eigenschaft ab. Das heißt, ich gehe hin, benutze diese Klasse, um mit dem Connection String zu handeln, und kann ganz einfach dann hingehen und dann die Eigenschaft "Password" beispielsweise ändern an der Stelle. Ich mache mal hier ein Breakpoint rein, lasse das mal laufen, damit müsste ich natürlich etwas erreichen, was in dem Fall ein Objekt ist mit den Eigenschaften, die ich hinzugetan habe, z. B. die "DataSource" ist gesetzt. Ich müsste z. B. auch den "InitialCatalog" wieder finden, dann sollte es irgendwo ein "UserName" unter "U" geben. Hier heißt es "UserID". Es gibt einige Alternativen im Connection String, "User oder UserID", und hier wird sich für eine entschieden dann. Unter anderem das "Password", und das ist natürlich noch leer. Das setze ich, speichere dann zurück in die Variable für den Connection String, und wenn ich da hingucke, sehen Sie mein supertolles Kennwort an der Stelle. Das heißt, wenn Sie die Aufgabe haben, Connections Strings zu manipulieren oder Connection Strings allein zu prüfen, ob sie gültig sind, weil Sie vielleicht der Konfiguration nicht so ganz trauen oder weil möglicherweise der Connection String auf eine Datenbank verweist, die als Konfiguration dient und möglicherweise Daten importieren soll oder Ähnliches, also immer da, wo Sie das Problem haben könnten, der Connection String stimmt überhaupt gar nicht, in dem Moment können Sie die ConnectionStringBuilder-Klasse relatitv gut benutzen, um zu prüfen, ist der Connection String formal korrekt, ob er wirklich funktional ist, sehen Sie natürlich erst, wenn ich das weiterlaufen lasse, und dass "Open" keinen Fehler auslöst, und die entsprechende Connection da natürlich an der Stelle den State "Open" bekommt dann. So kann ich das beenden, und dann geht es auch schon weiter.

Datenzugriff mit ADO.NET und .NET Core

Lernen Sie, wie mit Ihrer .NET Core-Anwendung auf relationale Datenbanken wie z.B. SQL Server oder SQLite zugreifen.

2 Std. 49 min (28 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:12.04.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!