Summary
We have covered a lot of important material in this chapter. You learned how to read and write data to a local SQLite database. Then, you learned how to simplify your data access code by leveraging Dapper, an ORM for .NET developers. Using an ORM will save you time creating boilerplate mapping code in your data access layers for WinUI projects (or any other .NET projects). All this data access code was made async to keep the UI responsive for the user.
Finally, you saw how to ensure the data going into the application's database is valid by adding data validation to our ViewModel
properties.
In the next chapter, we will learn how to create a beautiful Fluent UI with Microsoft's Fluent UI Design.