Frage

Ich bin neu in .NET, und ich bin nicht etwas scheinen, um herauszufinden, die einfach sein sollten. Ich möchte eine Zeile in eine Tabelle einfügen, und initialisieren es mit Werten, die nicht an Datensteuer gebunden sind. Insbesondere habe ich eine Create Steuerelement auf einer Seite. Im CreatedUser Verfahren mag ich eine Zeile in eine databse einzufügen habe ich „Benutzer“ genannt, die die Benutzername und die E-Mail-Adresse aus dem Create Steuerelement enthält, und das Datum der neue Benutzer erstellt wurde, aus der DateTime.Now Funktion. Es scheint nicht ein Weg, um die Parameter in dem SqlDataSource-Steuerelement in einer Art und Weise eingestellt wird, dass sie auf Daten zugreifen können, die nicht an Datensteuer gebunden ist. Kann mir jemand einen Weg erklären für mich, dies zu tun?

War es hilfreich?

Lösung

Sie sind auf dem falschen Weg - Sie werden nicht bei allen SqlDataSource-Steuerelement verwenden. Sie werden für eine direkte Interaktion mit der Datenbank von Code gehen. Zum Beispiel:

SqlConnection conn = new SqlConnection(connString);
SqlCommand cmnd = new SqlCommand("Insert Into Table (P1, P2) Values (@P1, @P2)", conn);
cmnd.Parameters.AddWithValue("@P1", P1Value);
cmnd.Parameters.AddWithValue("@P2", P2Value);
cmnd.ExecuteNonQuery();
conn.Close();

Jetzt, mit allem, was gesagt wird, wollen Sie das SqlCommand und SqlDataReader im Detail lernen (sie recht einfach sind) und dann richten Sie Ihre Aufmerksamkeit eine Data Access Layer zu erstellen, die Sie sinnvoll ist. Sie werden froh sein, dass du getan hast.

Andere Tipps

Eine weitere Option ist standardmäßig auf der Datenbank selbst, so einzustellen, dass Sie brauchen keine Sorgen zu Datetime.now über geben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top