Interface IEntityInfo
Meta-information about an entity class, including a constructor and type recovery.
public interface IEntityInfo
- Extension Methods
Properties
Attributes
Attribute properties by property name.
IReadOnlyDictionary<string, AttributeInfo> Attributes { get; }
Property Value
AttributesByID
Attribute properties by model ID.
IReadOnlyDictionary<Guid, AttributeInfo> AttributesByID { get; }
Property Value
Caption
string Caption { get; }
Property Value
EntityName
string EntityName { get; }
Property Value
EntityType
Type EntityType { get; }
Property Value
HasAudit
bool HasAudit { get; }
Property Value
IsAbstract
bool IsAbstract { get; }
Property Value
IsReferenceData
bool IsReferenceData { get; }
Property Value
IsTopLevel
bool IsTopLevel { get; }
Property Value
IsTransient
bool IsTransient { get; }
Property Value
ModelID
Guid ModelID { get; }
Property Value
PluralCaption
string PluralCaption { get; }
Property Value
PluralName
string PluralName { get; }
Property Value
Relationships
Relationship properties by property name.
IReadOnlyDictionary<string, RelationshipInfo> Relationships { get; }
Property Value
Sections
Display sections in display order.
IReadOnlyList<SectionInfo> Sections { get; }
Property Value
SortAscending
bool SortAscending { get; }
Property Value
SortProperty
PropertyInfo SortProperty { get; }
Property Value
Methods
Accept(IVisitor)
Passes the concrete entity type to Visit<T>().
void Accept(IVisitor visitor)
Parameters
visitorIVisitor
Accept<T>(IVisitor<T>)
Passes the concrete entity type to Visit<T>().
T Accept<T>(IVisitor<T> visitor)
Parameters
visitorIVisitor<T>
Returns
- T
Type Parameters
T
ConstructEntity(IEntityContext, IEntityInitialiser)
Creates a concrete entity given a context from a framework instance and a source of row data.
IEntity ConstructEntity(IEntityContext context, IEntityInitialiser initialiser)
Parameters
contextIEntityContextinitialiserIEntityInitialiser
Returns
EstimateRowSize()
Estimates the maximum memory size in bytes a Row could occupy. Uses MaxLength for strings/blobs instead of actual values. Does not require a Row instance.
uint EstimateRowSize()
Returns
- uint
Estimated maximum size in bytes
MeasureRowSize(Row)
Calculates the actual memory size in bytes of a Row instance. Includes object overhead and actual string/blob lengths.
uint MeasureRowSize(Row row)
Parameters
rowRowThe Row instance to measure
Returns
- uint
Size in bytes