Vorgehensweise: Generieren des Objektmodells in Visual Basic oder C#

In LINQ to SQL wird einer relationalen Datenbank ein Objektmodell in einer eigenen Programmiersprache zugeordnet. Zum automatischen Erzeugen eines Visual Basic-Modells oder C#-Modells aus den Metadaten einer vorhandenen Datenbank stehen zwei Tools zur Verfügung.

  • Wenn Sie Visual Studio verwenden, können Sie den Objektrelationalen Designer verwenden, um ein Objektmodell zu generieren. Der O/R-Designer bietet eine umfangreiche Benutzeroberfläche, mit der Sie ein LINQ to SQL-Objektmodell generieren können. Weitere Informationen finden Sie unter LINQ to SQL-Tools in Visual Studio.

  • Das SQLMetal-Befehlszeilentool. Weitere Informationen finden Sie unter SqlMetal.exe (Tool zur Codegenerierung).

    Hinweis

    Wenn Sie nicht über eine vorhandene Datenbank verfügen, sondern diese aus einem Objektmodell erstellen möchten, erstellen Sie Ihr Objektmodell mit Ihrem Code-Editor und mit CreateDatabase. Weitere Informationen finden Sie unter Gewusst wie: Dynamisches Erstellen einer neuen Datenbank.

Die Dokumentation für den O/R-Designer enthält Beispiele zum Generieren eines Visual Basic- oder C#-Objektmodells mithilfe des O/R-Designers. Die folgenden Informationen enthalten Beispiele für die Verwendung des SQLMetal-Befehlszeilentools. Weitere Informationen finden Sie unter SqlMetal.exe (Tool zur Codegenerierung).

Beispiel 1

Die SQLMetal-Befehlszeile im folgenden Beispiel erzeugt Visual Basic-Code als attributbasiertes Objektmodell der Beispieldatenbank Northwind. Gespeicherte Prozeduren und Funktionen werden ebenfalls gerendert.

sqlmetal /code:northwind.vb /language:vb "c:\northwnd.mdf" /sprocs /functions  

Beispiel 2

Die SQLMetal-Befehlszeile im folgenden Beispiel erzeugt C#-Code als attributbasiertes Objektmodell der Beispieldatenbank Northwind. Gespeicherte Prozeduren und Funktionen werden ebenfalls gerendert, und Tabellennamen werden automatisch pluralisiert.

sqlmetal /code:northwind.cs /language:csharp "c:\northwnd.mdf" /sprocs /functions /pluralize  

Siehe auch