BusinessObject<(Of <(<'T>)>)> Class
Generic base class for all ACSP business objects. Provides serialization, cloning, and property-name helper methods.
Implements the BusinessObjectBase
Namespace:
AdvantageCMS.Core.Admin.BaseClassesAssembly: AdvantageCMS.Core (in AdvantageCMS.Core.dll)
Syntax
[SerializableAttribute] public abstract class BusinessObject<T> : BusinessObjectBase where T : BusinessObject<T>
Type Parameters
- T
- The concrete business object type that derives from this class (CRTP pattern).
Examples
C#
[Serializable] public class AgentConfig : BusinessObject<AgentConfig> { public string Name { get; set; } public string SystemPrompt { get; set; } public bool IsEnabled { get; set; } protected override void SetSearchableProperties() { AddSearchableProperty("Name", Name); AddSearchableProperty("IsEnabled", IsEnabled); } protected override void SetSummaryDataRow() { AddSummaryDataRow("Name", Name ?? "N/A"); AddSummaryDataRow("Enabled", IsEnabled); } protected override bool Validate(eCMSActions action, ActionArgs e, out eCMSEngineEventStatus status, out string message) { status = eCMSEngineEventStatus.Success; message = string.Empty; if (string.IsNullOrWhiteSpace(Name)) { message = "Name is required."; status = eCMSEngineEventStatus.Failed; return false; } return true; } }
Inheritance Hierarchy
AdvantageCMS.Core.Admin.BaseClasses..::..BusinessObjectBase
AdvantageCMS.Core.Admin.BaseClasses..::..BusinessObject<(Of <(<'T>)>)>

