jeder, ich bin ein Student und neu in .NET und speziell MVC3 Entwicklung, aber für eines meiner Projekte muss ich darüber arbeiten und so die Lernphase durchlaufen Problem und Verwirrung, mit der ich konfrontiert bin, betrifft DB-Connectivity, wenn ich in Bezug auf das Abrufen von Datensätzen aus einer Datenbank etwas Ähnliches sehe:
%Vor%Aber während ich MSDN Library auscheckte, fand ich heraus dass SqlDataAdapter einen Konstruktor SqlDataAdapter (String, String) anbietet, der direkt einen SelectCommand und eine Verbindungszeichenfolge zum Initiieren annimmt und somit die Rolle von SqlCommand dazwischen wie folgt überspringt:
%Vor%Sieht für mich kurz und hübsch aus, aber ich bin hier verwirrt, dass, wenn das auf diese Weise möglich ist, warum die meisten Bücher / Lehrer früher (SqlCommand) gehen.
Entschuldigung im Voraus, wenn ich sehr Neuling oder verschwommen klingen werde! Ich schätze jede Hilfe, die meine Konzepte aufklären könnte! Vielen Dank! :)
Fehlercodes summierten es richtig:
Zusätzlich:
Meine persönliche Präferenz besteht darin, ALLE SQL-Strings in SqlCommand zu verpacken und SqlParameters hinzuzufügen, um Sql-Injection durch böswillige Benutzer zu vermeiden.
Hinsichtlich der Leistung der beiden Ansätze - ich erwarte nicht, dass es einen Unterschied gibt. (Wenn jemand mir das Gegenteil beweisen kann - mach es!).
Daher würde ich vorschlagen, bei der längeren Variante 1 zu bleiben und bei Bedarf Befehle und Parameter zu verwenden.
Ein bisschen eine Randnotiz - Datasets und DataTables sind in letzter Zeit aufgrund von Linq2Sql und Entity Framework ein wenig aus dem Spiel.
Aber natürlich ist das Wissen von einfachen alten SqlCommands / Adaptern / Lesern willkommen:)
Beeil dich! Wende dich auf LINQ !!!
Nicht mehr wie SQLDataset oder TableAdapters, keine offene Verbindung. Alles wird mit LINQ flüssiger.
LINQ-Beispiel:
dim result = von emp in myDataContext.Employees wo emp.Salary & gt; 10000 Wählen Sie emp.ID, emp.SurName, ....
ausmyDatagrid.datasource = result.toList
Mit LINQ müssen Sie sich nicht um einfache Anführungszeichen oder crlf in Ihren Abfragen kümmern ...
Und Sie haben sogar Intellisense für die SQL-Tabellen, -Spalten und -Objekte!
Tags und Links .net c# sqlcommand sqldataadapter