# C# API

This article is only applicable to .NET Framework 4.x and .NET 8 (former .NET Core) on Windows. eXtremeDB for .NET 5 (on Windows, Linux) and later is documented in the eXtremeSQL C# API for .NET Core articles.

> The eXtremeDB C# API (provided only in Windows packages) consists of a set of wrapper classes that encapsulate the low-level C functions which make up the eXtremeDB runtime. The usage of these classes is demonstrated in the C# SDK Samples. For developers new to eXtremeDB, we recommend the Quick Start tutorial to quickly learn the programming fundamentals. Then proceed to build and run the SDK samples.

> As demonstrated in these samples, a C# application will define its database schema using native C# classes with the `[Persistent]` attribute. Typically these database classes are then specified in the `Database.Parameters.Classes` initialization list as an argument to the `Database.Open()` method. The required eXtremeDB runtime libraries are loaded dynamically when the a `Database` object is instantiated.

> Please use the following link for general principles of eXtremeDB application implementation using the C# classes.