📄️ Domain Model
The heart of a Shesha application is the domain. The domain is the set of entities that represent the core business concepts of your application.
📄️ Domain Class Attributes
| Attribute | Description |
📄️ Domain Services
The domain services are the core of your application. They are responsible for managing the business logic and data access for your application. The domain services are built on top of the domain model and provide a set of APIs that can be used by the application layer to interact with the domain model.
📄️ Generic Entity References
A GenericEntityReference is a special property type that allows an entity to reference any other entity without requiring a fixed foreign key relationship. This is useful when a property needs to point to different types of entities depending on the context.
📄️ Reference Lists (List of Values)
A Reference List (sometimes referred to as Lookup values, or List of Values) refers to a standard list of values usually displayed to end-users as dropdown lists (e.g. Titles Male, Female; Colour: Red,Blue, etc...).
📄️ Custom Configuration Items
Configuration items are a core concept in the Shesha framework. They represent configurable building blocks that can be managed through the admin UI, exported as JSON, and imported across environments. The framework ships with several built-in configuration item types such as Forms, Reference Lists, Notification Types, and Notification Channels.
📄️ Dynamic CRUD APIs
Shesha provides a feature to auto-generate a set of CRUD (Create, Read, Update, Delete) APIs for any entity. These APIs can be utilized to carry out CRUD operations on that entity. Furthermore, you can link these APIs from the form configurator, enabling you to swiftly construct a user interface for managing these entities.
📄️ Custom APIs
To implement custom APIs, you need to create an Application Service by creating a class that inherits from the SheshaAppServiceBase. SheshaAppServiceBase class provides a lot of useful functionality.
📄️ Multi Entity Reference (Many-to-Many Reference)
Multi Entity Reference allows an entity to maintain references to multiple related entities simultaneously, as opposed to a single entity reference. Currently, this implementation is supported on both AutoComplete and Entity Picker.