CQS, IQuery & ICommand
Under the covers Cofoundry uses a lightweight CQS framework to structure data access. You can structure your data access any way you want, but this framework is there for you to use if you want to benefit from:
- A best-practice and structured methodology
- Integrated validation
- Integrated permission handling
- Integrated logging
IDomainRepository is the base repository that
IAdvancedContentRpository inherit from. It provides easy access to components such as generic command and query execution, permission escalation and transaction management.
When passing files to commands you'll encounter the
IFileSource abstraction. This section covers the range of
IFileSource implementations that you can use to upload files to Cofoundry.
Cofoundry uses a standardized approach to paging queries that return large sets of data. You can take advantage of this standardized framework if you want to be consistent with Cofoundry, but it's entirely optional.
Cofoundry has a transaction manager abstraction that provides a few benefits over
Cofoundry uses Entity Framework Core for data access and includes a few tools you may wish to use if you are also using EF Core for your own data.
Cofoundry does not use EF Database Migrations and instead we use our own framework for managing database updates via SQL scripts. This framework is also available to you as well as plugin developers.
For more information see the Auto Update Documentation