Plain old CLR object
A plain old CLR object is a simple .NET object that carries application data without framework-specific inheritance, dependencies, or behavioral requirements.
ASP.NET Core in Action, 3e
A plain old CLR object is an ordinary .NET object that does not depend on a specialized framework base type or programming model.
- How it is used
- Uses ordinary classes as inputs, configuration objects, database entities, and JSON response values across ASP.NET Core features.
- How deep it goes
- Defines POCOs and explains binding conventions, but stops short of detailing every EF Core mapping convention.
- Examples
- Uses BindableOptions, Recipe, Ingredient, Person, and Fruit as concrete POCO examples.
- What you can do after
- Apply it via model binding, IOptions<T>, EF Core entities, and minimal API JSON responses.
Read how ASP.NET Core in Action, 3e explains plain old CLR object →
Building Web APIs with ASP.NET Core
A plain old CLR object (POCO) is a normal .NET class without framework-specific inheritance or dependencies.
- How it is used
- Defines simple data objects returned by ASP.NET Core web API actions.
- How deep it goes
- Defines the class shape and serialization role, but stops short of database-backed behavior or complex domain responsibilities.
- Examples
- Uses WeatherForecast and BoardGame classes with Date, TemperatureC, Summary, Id, Name, and Year properties.
- What you can do after
- Build it from scratch as a simple C# data class and return its objects from a controller or Minimal API endpoint.
Read how Building Web APIs with ASP.NET Core explains plain old CLR object →
Related concepts
- model bindingproduced by · Model binding is the process of locating incoming data, converting it to appropriate types, and assigning it to application objects or handler parameters.
- eventincludes · An event is an occurrence, change, or associated record or notification recognized as significant within a system or context.
- strongly typed optionsused by · Strongly typed options are configuration values represented by typed .NET objects whose properties correspond to application settings.
- CsvHelperimplemented by · CsvHelper is an open-source .NET library for reading and writing comma-separated and other delimited text data.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.

