Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Codeblock
languagec#
titleRead
linenumberstrue
collapsetrue
// GET: User (Ausgabe aller Datensätze in der Datenbank)

public ActionResult Index()
{
	// Datenbankverbindung öffnen
	SQLiteConnection connection = DbConnect();
	// Read DB Content
	List<User> users = new List<User>();
	using (var command = new SQLiteCommand(connection))
	{
		command.CommandText = "SELECT * FROM db_User";
		using (SQLiteDataReader reader = command.ExecuteReader())
        {
        	while (reader.Read())
			{
				users.Add(new User
                {
                	Id = reader.GetInt32(0),
                 	FirstName = reader.GetString(1)
				});
			}
			reader.Close()
		}
	}
    DbDisconnect(connection);
	// Rückgabe der gelesenen Benutzer als Liste
    return View(users.ToList());
}


Codeblock
languagec#
titleUpdate
linenumberstrue
// GET: User/Edit/5 (View laden und mit Informationen aus der Datenbank befüllen)

public ActionResult Edit(int? id)
{
	User user;
	//  Falls ID nicht vorhanden -> Error
	if (id == null)
    {
    	return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
    }
	// Datenbankverbindung öffnen
    SQLiteConnection connection = DbConnect();
    using (var command = new SQLiteCommand(connection))
    {
		command.CommandText = string.Format("SELECT * FROM db_User WHERE Id = " + id);
    	using (SQLiteDataReader reader = command.ExecuteReader())
		{
			reader.Read();
            user = new User
            {
            	Id = reader.GetInt32(0),
            	Name = reader.GetString(1)
			};
		}
	}
	// Informationen über User an den View übergeben
	return View(user)
}

// POST: User/Edit/5 (Aktualisierte Daten in Datenbank schreiben)

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "Id,Name")]User user)
{
	SQLiteConnection connection = DbConnect();
    using (var command = new SQLiteCommand(connection))
	{
		command.CommandText = string.Format("UPDATE db_User SET Name = '{1}' WHERE Id = {0}",
			user.Id,
			user.Name
		);
		command.ExecuteNonQuery();
	}
	return RedirectToAction("Index");
}