ASP.NET-Webseiten - Datenbanken


In diesem Kapitel geht es um die Arbeit mit Datenbanken.


Was wir tun werden

In diesem Kapitel werden wir:

  • Erstellen Sie eine Webseite, um Daten aus einer Datenbank aufzulisten

Anzeigen von Daten aus der Datenbank

Mit Webseiten können Sie ganz einfach Daten aus einer Datenbank anzeigen.

Sie können eine Verbindung zu einer vorhandenen Datenbank herstellen oder eine neue Datenbank von Grund auf neu erstellen.

In diesem Beispiel stellen wir eine Verbindung zu einer vorhandenen SQL Server Compact-Datenbank her.


Hinzufügen einer Kundenseite

Erstellen Sie im Ordner „DemoWebPages“ eine neue CSHTML-Datei mit dem Namen „Products.cshtml“.

Ersetzen Sie den Code in der Datei durch den Code aus dem folgenden Beispiel:

Produkte.cshtml

@{
var db = Database.Open("SmallBakery"); 
var selectQueryString = "SELECT * FROM Product ORDER BY Name"; 
}

<html> 
<body> 
<h1>Small Bakery Products</h1> 
<table> 
<tr>
<th>Id</th> 
<th>Product</th> 
<th>Description</th> 
<th>Price</th> 
</tr>
@foreach(var row in db.Query(selectQueryString))
{

<tr> 
<td>@row.Id</td> 
<td>@row.Name</td> 
<td>@row.Description</td> 
<td align="right">@row.Price</td> 
</tr> 
}
</table> 
</body> 
</html>

Beispiel erklärt

Die Methode Database.Open( name ) stellt in zwei Schritten eine Verbindung zu einer Datenbank her:

Zuerst durchsucht es den App_Data-Ordner der Anwendung nach einer Datenbank, die mit dem Namensparameter ohne die Dateinamenerweiterung übereinstimmt.

Wenn keine Datei gefunden wird, wird in der Datei Web.config der Anwendung nach einer „Verbindungszeichenfolge“ gesucht.

(Eine Verbindungszeichenfolge enthält Informationen darüber, wie eine Verbindung zu einer Datenbank hergestellt wird. Sie kann einen Dateipfad oder den Namen einer SQL-Datenbank mit vollständigem Benutzernamen und Kennwort enthalten.)

Diese zweistufige Suche ermöglicht es, die Anwendung mit einer lokalen Datenbank zu testen und die Anwendung auf einem Webhost mit einer Verbindungszeichenfolge auszuführen.



ASP.NET-Datenbankobjektreferenz

Method Description
Database.Execute(SQLstatement [, parameters])Executes SQLstatement (with optional parameters) such as INSERT, DELETE, or UPDATE and returns a count of affected records.
Database.GetLastInsertId() Returns the identity column from the most recently inserted row.
Database.Open(filename)
Database.Open(connectionStringName)
Opens either the specified database file or the database specified using a named connection string from the Web.config file.
Database.OpenConnectionString(connectionString) Opens a database using the connection string. (This contrasts with Database.Open, which uses a connection string name.)
Database.Query(SQLstatement[, parameters])Queries the database using SQLstatement (optionally passing parameters) and returns the results as a collection.
Database.QuerySingle(SQLstatement [, parameters])Executes SQLstatement (with optional parameters) and returns a single record.
Database.QueryValue(SQLstatement [, parameters])Executes SQLstatement (with optional parameters) and returns a single value.