Speichern von Daten in einer lokalen SQLite.NET-DatenbankStore Data in a Local SQLite.NET Database

Beispiel herunterladen Das Beispiel herunterladenDownload Sample Download the sample

In diesem Schnellstart lernen Sie, wie Sie:In this quickstart, you will learn how to:

  • den NuGet-Paket-Manager verwenden, um ein NuGet-Paket zu einem Projekt hinzufügen.Use the NuGet Package Manager to add a NuGet package to a project.
  • Daten lokal in einer SQLite.NET-Datenbank speichern.Store data locally in a SQLite.NET database.

In diesem Schnellstart erfahren Sie, wie Sie Daten in einer lokalen SQLite.NET-Datenbank speichern.The quickstart walks through how to store data in a local SQLite.NET database. Die fertige Anwendung wird unten gezeigt:The final application is shown below:

VoraussetzungenPrerequisites

Sie sollten den vorherigen Schnellstart erfolgreich abgeschlossen haben, bevor Sie diesen Schnellstart versuchen.You should successfully complete the previous quickstart before attempting this quickstart. Alternativ können Sie das vorherige Schnellstartbeispiel herunterladen und als Startpunkt für diesen Schnellstart verwenden.Alternatively, download the previous quickstart sample and use it as the starting point for this quickstart.

Aktualisieren der App mit Visual StudioUpdate the app with Visual Studio

  1. Starten Sie Visual Studio, und öffnen Sie die Projektmappe „Notizen“.Launch Visual Studio and open the Notes solution.

  2. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt Notizen und anschließend auf NuGet-Pakete verwalten... :In Solution Explorer, select the Notes project, right-click and select Manage NuGet Packages...:

  3. Klicken Sie im NuGet-Paket-Manager auf die Registerkarte Durchsuchen, suchen Sie nach dem NuGet-Paket sqlite-net-pcl, wählen Sie es aus, und klicken Sie auf die Schaltfläche Installieren, um es dem Projekt hinzuzufügen:In the NuGet Package Manager, select the Browse tab, search for the sqlite-net-pcl NuGet package, select it, and click the Install button to add it to the project:

    Hinweis

    Es gibt eine Reihe von NuGet-Paketen mit ähnlichen Namen.There are a number of NuGet packages with similar names. Das richtige Paket verfügt über die folgenden Attribute:The correct package has these attributes:

    • Autor(en): Frank A. KruegerAuthor(s): Frank A. Krueger
    • ID: sqlite-net-pclId: sqlite-net-pcl
    • NuGet-Link: sqlite-net-pclNuGet link: sqlite-net-pcl

    Trotz des Paketnamens kann dieses NuGet-Paket in .NET Standard-Projekten verwendet werden.Despite the package name, this NuGet package can be used in .NET Standard projects.

    Mit diesem Paket können Datenbankvorgänge in der Anwendung verwendet werden.This package will be used to incorporate database operations into the application.

  4. Öffnen Sie im Projektmappen-Explorer im Projekt Notizen die Datei Note.cs im Ordner Modelle, und ersetzen Sie den vorhandenen Code durch den folgenden Code:In Solution Explorer, in the Notes project, open Note.cs in the Models folder and replace the existing code with the following code:

    using System;
    using SQLite;
    
    namespace Notes.Models
    {
        public class Note
        {
            [PrimaryKey, AutoIncrement]
            public int ID { get; set; }
            public string Text { get; set; }
            public DateTime Date { get; set; }
        }
    }
    

    Diese Klasse definiert ein Note-Modell, das Daten über jede Notiz in der Anwendung speichert.This class defines a Note model that will store data about each note in the application. Die ID-Eigenschaft wird mit den Attributen PrimaryKey und AutoIncrement markiert, um sicherzustellen, dass jede Note-Instanz in der SQLite.NET-Datenbank über eine eindeutige ID verfügt, die von SQLite.NET vergeben wird.The ID property is marked with PrimaryKey and AutoIncrement attributes to ensure that each Note instance in the SQLite.NET database will have a unique id provided by SQLite.NET.

    Speichern Sie die Änderungen an Note.cs, indem Sie STRG+S drücken, und schließen Sie die Datei.Save the changes to Note.cs by pressing CTRL+S, and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  5. Fügen Sie im Projektmappen-Explorer einen neuen Ordner namens Daten zum Projekt Notizen hinzu.In Solution Explorer, add a new folder named Data to the Notes project.

  6. Fügen Sie im Projektmappen-Explorer im Projekt Notizen dem Ordner Daten eine neue Klasse mit dem Namen NoteDatabase hinzu.In Solution Explorer, in the Notes project, add a new class named NoteDatabase to the Data folder.

  7. Ersetzen Sie in NoteDatabase.cs den vorhandenen Code durch den folgenden Code:In NoteDatabase.cs, replace the existing code with the following code:

    using System.Collections.Generic;
    using System.Threading.Tasks;
    using SQLite;
    using Notes.Models;
    
    namespace Notes.Data
    {
        public class NoteDatabase
        {
            readonly SQLiteAsyncConnection _database;
    
            public NoteDatabase(string dbPath)
            {
                _database = new SQLiteAsyncConnection(dbPath);
                _database.CreateTableAsync<Note>().Wait();
            }
    
            public Task<List<Note>> GetNotesAsync()
            {
                return _database.Table<Note>().ToListAsync();
            }
    
            public Task<Note> GetNoteAsync(int id)
            {
                return _database.Table<Note>()
                                .Where(i => i.ID == id)
                                .FirstOrDefaultAsync();
            }
    
            public Task<int> SaveNoteAsync(Note note)
            {
                if (note.ID != 0)
                {
                    return _database.UpdateAsync(note);
                }
                else
                {
                    return _database.InsertAsync(note);
                }
            }
    
            public Task<int> DeleteNoteAsync(Note note)
            {
                return _database.DeleteAsync(note);
            }
        }
    }
    

    Diese Klasse enthält Code, mit dem die Datenbank erstellt wird und Daten aus ihr gelesen bzw. in sie geschrieben und aus ihr gelöscht werden.This class contains code to create the database, read data from it, write data to it, and delete data from it. Im Code werden asynchrone SQLite.NET-APIs verwendet, mit denen Datenbankvorgänge in Hintergrundthreads verschoben werden.The code uses asynchronous SQLite.NET APIs that move database operations to background threads. Außerdem akzeptiert der NoteDatabase-Konstruktor den Pfad der Datenbankdatei als Argument.In addition, the NoteDatabase constructor takes the path of the database file as an argument. Dieser Pfad wird im nächsten Schritt von der App-Klasse bereitgestellt.This path will be provided by the App class in the next step.

    Speichern Sie die Änderungen an NoteDatabase.cs, indem Sie STRG+S drücken, und schließen Sie die Datei.Save the changes to NoteDatabase.cs by pressing CTRL+S, and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  8. Doppelklicken Sie im Projektmappen-Explorer im Projekt Notizen auf App.xaml.cs, um die Datei zu öffnen.In Solution Explorer, in the Notes project, double-click App.xaml.cs to open it. Ersetzen Sie dann den vorhandenen Code durch folgenden Code:Then replace the existing code with the following code:

    using System;
    using System.IO;
    using Xamarin.Forms;
    using Notes.Data;
    
    namespace Notes
    {
        public partial class App : Application
        {
            static NoteDatabase database;
    
            public static NoteDatabase Database
            {
                get
                {
                    if (database == null)
                    {
                        database = new NoteDatabase(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Notes.db3"));
                    }
                    return database;
                }
            }
    
            public App()
            {
                InitializeComponent();
                MainPage = new NavigationPage(new NotesPage());
            }
    
            protected override void OnStart()
            {
                // Handle when your app starts
            }
    
            protected override void OnSleep()
            {
                // Handle when your app sleeps
            }
    
            protected override void OnResume()
            {
                // Handle when your app resumes
            }
        }
    }
    

    Dieser Code definiert eine Database-Eigenschaft, die eine neue NoteDatabase-Instanz als Singleton erzeugt, wobei der Dateiname der Datenbank als Argument an den NoteDatabase-Konstruktor übergeben wird.This code defines a Database property that creates a new NoteDatabase instance as a singleton, passing in the filename of the database as the argument to the NoteDatabase constructor. Durch das Bereitstellen der Datenbank als Singleton kann eine einzelne Datenbankverbindung erstellt werden, die während der Ausführung der App offen bleibt, sodass der Aufwand für das Öffnen und Schließen der Datenbank beim Ausführen des Datenbankvorgangs vermieden wird.The advantage of exposing the database as a singleton is that a single database connection is created that's kept open while the application runs, therefore avoiding the expense of opening and closing the database file each time a database operation is performed.

    Speichern Sie die Änderungen an App.xaml.cs, indem Sie STRG+S drücken, und schließen Sie die Datei.Save the changes to App.xaml.cs by pressing CTRL+S, and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  9. Doppelklicken Sie im Projektmappen-Explorer im Projekt Notizen auf NotesPage.xaml.cs, um diese Datei zu öffnen.In Solution Explorer, in the Notes project, double-click NotesPage.xaml.cs to open it. Ersetzen Sie dann die OnAppearing-Methode durch folgenden Code:Then replace the OnAppearing method with the following code:

    protected override async void OnAppearing()
    {
        base.OnAppearing();
    
        listView.ItemsSource = await App.Database.GetNotesAsync();
    }
    

    Dieser Code befüllt die ListView-Klasse mit sämtlichen Notizen, die in der Datenbank gespeichert sind.This code populates the ListView with any notes stored in the database.

    Speichern Sie die Änderungen an NotesPage.xaml.cs, indem Sie STRG+S drücken, und schließen Sie die Datei.Save the changes to NotesPage.xaml.cs by pressing CTRL+S, and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  10. Doppelklicken Sie im Projektmappen-Explorer auf NoteEntryPage.xaml.cs, um diese Datei zu öffnen.In Solution Explorer, double-click NoteEntryPage.xaml.cs to open it. Ersetzen Sie dann die OnSaveButtonClicked- und OnDeleteButtonClicked-Methoden durch folgenden Code:Then replace the OnSaveButtonClicked and OnDeleteButtonClicked methods with the following code:

    async void OnSaveButtonClicked(object sender, EventArgs e)
    {
        var note = (Note)BindingContext;
        note.Date = DateTime.UtcNow;
        await App.Database.SaveNoteAsync(note);
        await Navigation.PopAsync();
    }
    
    async void OnDeleteButtonClicked(object sender, EventArgs e)
    {
        var note = (Note)BindingContext;
        await App.Database.DeleteNoteAsync(note);
        await Navigation.PopAsync();
    }
    

    NoteEntryPage speichert eine Note-Instanz, die eine einzelne Notiz darstellt, in der BindingContext-Eigenschaft der Seite.The NoteEntryPage stores a Note instance, which represents a single note, in the BindingContext of the page. Wenn der OnSaveButtonClicked-Ereignishandler ausgeführt wird, wird die Note-Instanz in der Datenbank gespeichert, und die Anwendung navigiert zur vorherigen Seite zurück.When the OnSaveButtonClicked event handler is executed, the Note instance is saved to the database and the application navigates back to the previous page. Wenn der OnDeleteButtonClicked-Ereignishandler ausgeführt wird, wird die Note-Instanz aus der Datenbank gelöscht, und die Anwendung navigiert zur vorherigen Seite zurück.When the OnDeleteButtonClicked event handler is executed, the Note instance is deleted from the database and the application navigates back to the previous page.

    Speichern Sie die Änderungen an NoteEntryPage.xaml.cs, indem Sie STRG+S drücken, und schließen Sie die Datei.Save the changes to NoteEntryPage.xaml.cs by pressing CTRL+S, and close the file.

  11. Erstellen Sie das Projekt auf jeder Plattform, und führen Sie dieses aus.Build and run the project on each platform. Weitere Informationen finden Sie unter Erstellen des Schnellstarts.For more information, see Building the quickstart.

    Drücken Sie unter NotesPage auf die Schaltfläche + , um zur NoteEntryPage-Seite zu navigieren und eine Notiz einzugeben.On the NotesPage press the + button to navigate to the NoteEntryPage and enter a note. Nach dem Speichern der Notiz navigiert die Anwendung zurück zu NotesPage.After saving the note the application will navigate back to the NotesPage.

    Geben Sie eine Anzahl von Notizen unterschiedlicher Länge ein, um das Verhalten der Anwendung zu beobachten.Enter a number of notes, of varying length, to observe the application behavior.

Aktualisieren der App mit Visual Studio für MacUpdate the app with Visual Studio for Mac

  1. Starten Sie Visual Studio für Mac, und öffnen Sie das Projekt „Notizen“.Launch Visual Studio for Mac and open the Notes project.

  2. Klicken Sie im Lösungspad mit der rechten Maustaste auf das Projekt Notizen und anschließend auf Add > Add NuGet Packages... (Hinzufügen > NuGet-Pakete hinzufügen...):In the Solution Pad, select the Notes project, right-click and select Add > Add NuGet Packages...:

  3. Suchen Sie im Fenster Pakete hinzufügen nach dem NuGet-Paket sqlite-net-pcl, wählen Sie es aus, und klicken Sie auf Paket hinzufügen, um es dem Projekt hinzuzufügen:In the Add Packages window, search for the sqlite-net-pcl NuGet package, select it, and click the Add Package button to add it to the project:

    Hinweis

    Es gibt eine Reihe von NuGet-Paketen mit ähnlichen Namen.There are a number of NuGet packages with similar names. Das richtige Paket verfügt über die folgenden Attribute:The correct package has these attributes:

    Trotz des Paketnamens kann dieses NuGet-Paket in .NET Standard-Projekten verwendet werden.Despite the package name, this NuGet package can be used in .NET Standard projects.

    Mit diesem Paket können Datenbankvorgänge in der Anwendung verwendet werden.This package will be used to incorporate database operations into the application.

  4. Öffnen Sie im Lösungspad im Projekt Notizen die Datei Note.cs im Ordner Modelle, und ersetzen Sie den vorhandenen Code durch den folgenden Code:In the Solution Pad, in the Notes project, open Note.cs in the Models folder and replace the existing code with the following code:

    using System;
    using SQLite;
    
    namespace Notes.Models
    {
        public class Note
        {
            [PrimaryKey, AutoIncrement]
            public int ID { get; set; }
            public string Text { get; set; }
            public DateTime Date { get; set; }
        }
    }
    

    Diese Klasse definiert ein Note-Modell, das Daten über jede Notiz in der Anwendung speichert.This class defines a Note model that will store data about each note in the application. Die ID-Eigenschaft wird mit den Attributen PrimaryKey und AutoIncrement markiert, um sicherzustellen, dass jede Note-Instanz in der SQLite.NET-Datenbank über eine eindeutige ID verfügt, die von SQLite.NET vergeben wird.The ID property is marked with PrimaryKey and AutoIncrement attributes to ensure that each Note instance in the SQLite.NET database will have a unique id provided by SQLite.NET.

    Speichern Sie die Änderungen an Note.cs, indem Sie auf Datei > Speichern klicken (oder indem Sie ⌘+S drücken), und schließen Sie die Datei.Save the changes to Note.cs by choosing File > Save (or by pressing ⌘ + S), and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  5. Fügen Sie im Lösungspad einen neuen Ordner namens Daten zum Projekt Notizen hinzu.In the Solution Pad, add a new folder named Data to the Notes project.

  6. Fügen Sie im Lösungspad im Projekt Notizen dem Ordner Daten eine neue Klasse mit dem Namen NoteDatabase hinzu.In the Solution Pad, in the Notes project, add a new class named NoteDatabase to the Data folder.

  7. Ersetzen Sie in NoteDatabase.cs den vorhandenen Code durch den folgenden Code:In NoteDatabase.cs, replace the existing code with the following code:

    using System.Collections.Generic;
    using System.Threading.Tasks;
    using SQLite;
    using Notes.Models;
    
    namespace Notes.Data
    {
        public class NoteDatabase
        {
            readonly SQLiteAsyncConnection _database;
    
            public NoteDatabase(string dbPath)
            {
                _database = new SQLiteAsyncConnection(dbPath);
                _database.CreateTableAsync<Note>().Wait();
            }
    
            public Task<List<Note>> GetNotesAsync()
            {
                return _database.Table<Note>().ToListAsync();
            }
    
            public Task<Note> GetNoteAsync(int id)
            {
                return _database.Table<Note>()
                                .Where(i => i.ID == id)
                                .FirstOrDefaultAsync();
            }
    
            public Task<int> SaveNoteAsync(Note note)
            {
                if (note.ID != 0)
                {
                    return _database.UpdateAsync(note);
                }
                else
                {
                    return _database.InsertAsync(note);
                }
            }
    
            public Task<int> DeleteNoteAsync(Note note)
            {
                return _database.DeleteAsync(note);
            }
        }
    }
    

    Diese Klasse enthält Code, mit dem die Datenbank erstellt wird und Daten aus ihr gelesen bzw. in sie geschrieben und aus ihr gelöscht werden.This class contains code to create the database, read data from it, write data to it, and delete data from it. Im Code werden asynchrone SQLite.NET-APIs verwendet, mit denen Datenbankvorgänge in Hintergrundthreads verschoben werden.The code uses asynchronous SQLite.NET APIs that move database operations to background threads. Außerdem akzeptiert der NoteDatabase-Konstruktor den Pfad der Datenbankdatei als Argument.In addition, the NoteDatabase constructor takes the path of the database file as an argument. Dieser Pfad wird im nächsten Schritt von der App-Klasse bereitgestellt.This path will be provided by the App class in the next step.

    Speichern Sie die Änderungen an NoteDatabase.cs, indem Sie auf Datei > Speichern klicken (oder indem Sie ⌘+S drücken), und schließen Sie die Datei.Save the changes to NoteDatabase.cs by choosing File > Save (or by pressing ⌘ + S), and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  8. Doppelklicken Sie im Lösungspad im Projekt Notizen auf App.xaml.cs, um diese Datei zu öffnen.In the Solution Pad, in the Notes project, double-click App.xaml.cs to open it. Ersetzen Sie dann den vorhandenen Code durch folgenden Code:Then replace the existing code with the following code:

    using System;
    using System.IO;
    using Xamarin.Forms;
    using Notes.Data;
    
    namespace Notes
    {
        public partial class App : Application
        {
            static NoteDatabase database;
    
            public static NoteDatabase Database
            {
                get
                {
                    if (database == null)
                    {
                        database = new NoteDatabase(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Notes.db3"));
                    }
                    return database;
                }
            }
    
            public App()
            {
                InitializeComponent();
                MainPage = new NavigationPage(new NotesPage());
            }
    
            protected override void OnStart()
            {
                // Handle when your app starts
            }
    
            protected override void OnSleep()
            {
                // Handle when your app sleeps
            }
    
            protected override void OnResume()
            {
                // Handle when your app resumes
            }
        }
    }
    

    Dieser Code definiert eine Database-Eigenschaft, die eine neue NoteDatabase-Instanz als Singleton erzeugt, wobei der Dateiname der Datenbank als Argument an den NoteDatabase-Konstruktor übergeben wird.This code defines a Database property that creates a new NoteDatabase instance as a singleton, passing in the filename of the database as the argument to the NoteDatabase constructor. Durch das Bereitstellen der Datenbank als Singleton kann eine einzelne Datenbankverbindung erstellt werden, die während der Ausführung der App offen bleibt, sodass der Aufwand für das Öffnen und Schließen der Datenbank beim Ausführen des Datenbankvorgangs vermieden wird.The advantage of exposing the database as a singleton is that a single database connection is created that's kept open while the application runs, therefore avoiding the expense of opening and closing the database file each time a database operation is performed.

    Speichern Sie die Änderungen an App.xaml.cs, indem Sie auf Datei > Speichern klicken (oder indem Sie ⌘+S drücken), und schließen Sie die Datei.Save the changes to App.xaml.cs by choosing File > Save (or by pressing ⌘ + S), and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  9. Doppelklicken Sie im Lösungspad im Projekt Notizen auf NotesPage.xaml.cs, um diese Datei zu öffnen.In the Solution Pad, in the Notes project, double-click NotesPage.xaml.cs to open it. Ersetzen Sie dann die OnAppearing-Methode durch folgenden Code:Then replace the OnAppearing method with the following code:

    protected override async void OnAppearing()
    {
        base.OnAppearing();
    
        listView.ItemsSource = await App.Database.GetNotesAsync();
    }
    

    Dieser Code befüllt die ListView-Klasse mit sämtlichen Notizen, die in der Datenbank gespeichert sind.This code populates the ListView with any notes stored in the database.

    Speichern Sie die Änderungen an NotesPage.xaml.cs, indem Sie auf Datei > Speichern klicken (oder indem Sie ⌘+S drücken), und schließen Sie die Datei.Save the changes to NotesPage.xaml.cs by choosing File > Save (or by pressing ⌘ + S), and close the file.

    Warnung

    Der Versuch, die Anwendung an diesem Punkt zu erstellen, führt zu Fehlern, die in weiteren Schritten behoben werden.Attempting to build the application at this point will result in errors that will be fixed in subsequent steps.

  10. Doppelklicken Sie im Lösungspad auf NoteEntryPage.xaml.cs, um die Datei zu öffnen.In the Solution Pad, double-click NoteEntryPage.xaml.cs to open it. Ersetzen Sie dann die OnSaveButtonClicked- und OnDeleteButtonClicked-Methoden durch folgenden Code:Then replace the OnSaveButtonClicked and OnDeleteButtonClicked methods with the following code:

    async void OnSaveButtonClicked(object sender, EventArgs e)
    {
        var note = (Note)BindingContext;
        note.Date = DateTime.UtcNow;
        await App.Database.SaveNoteAsync(note);
        await Navigation.PopAsync();
    }
    
    async void OnDeleteButtonClicked(object sender, EventArgs e)
    {
        var note = (Note)BindingContext;
        await App.Database.DeleteNoteAsync(note);
        await Navigation.PopAsync();
    }
    

    NoteEntryPage speichert eine Note-Instanz, die eine einzelne Notiz darstellt, in der BindingContext-Eigenschaft der Seite.The NoteEntryPage stores a Note instance, which represents a single note, in the BindingContext of the page. Wenn der OnSaveButtonClicked-Ereignishandler ausgeführt wird, wird die Note-Instanz in der Datenbank gespeichert, und die Anwendung navigiert zur vorherigen Seite zurück.When the OnSaveButtonClicked event handler is executed, the Note instance is saved to the database and the application navigates back to the previous page. Wenn der OnDeleteButtonClicked-Ereignishandler ausgeführt wird, wird die Note-Instanz aus der Datenbank gelöscht, und die Anwendung navigiert zur vorherigen Seite zurück.When the OnDeleteButtonClicked event handler is executed, the Note instance is deleted from the database and the application navigates back to the previous page.

    Speichern Sie die Änderungen an NoteEntryPage.xaml.cs, indem Sie auf Datei > Speichern klicken (oder indem Sie ⌘+S drücken), und schließen Sie die Datei.Save the changes to NoteEntryPage.xaml.cs by choosing File > Save (or by pressing ⌘ + S), and close the file.

  11. Erstellen Sie das Projekt auf jeder Plattform, und führen Sie dieses aus.Build and run the project on each platform. Weitere Informationen finden Sie unter Erstellen des Schnellstarts.For more information, see Building the quickstart.

    Drücken Sie unter NotesPage auf die Schaltfläche + , um zur NoteEntryPage-Seite zu navigieren und eine Notiz einzugeben.On the NotesPage press the + button to navigate to the NoteEntryPage and enter a note. Nach dem Speichern der Notiz navigiert die Anwendung zurück zu NotesPage.After saving the note the application will navigate back to the NotesPage.

    Geben Sie eine Anzahl von Notizen unterschiedlicher Länge ein, um das Verhalten der Anwendung zu beobachten.Enter a number of notes, of varying length, to observe the application behavior.

Nächste SchritteNext steps

In diesem Schnellstart haben Sie gelernt, wie Sie:In this quickstart, you learned how to:

  • den NuGet-Paket-Manager verwenden, um ein NuGet-Paket zu einem Projekt hinzufügen.Use the NuGet Package Manager to add a NuGet package to a project.
  • Daten lokal in einer SQLite.NET-Datenbank speichern.Store data locally in a SQLite.NET database.

Fahren Sie mit dem nächsten Schnellstart fort, um die Anwendung mit XAML-Formatvorlagen zu gestalten.To style the application with XAML styles, continue to the next quickstart.