...
Code Block |
---|
Builder.Add.Class(nameof(Elements.Office));
|
This will return an instace of ClassBuilder
that can be used to furhter configure the created class.
...
Code Block |
---|
Builder.Add.Class(nameof(Elements.Office))
.Configure(cls =>
{
// Do something with the IMetaClass
});
|
Property
To add an additional property simply use:
Code Block |
---|
Builder.Add.Property(Elements.Office, "Name", MetaType.Text);
|
This will return an instace of PropertyBuilder
that can be used to furhter configure the created property.
...
Code Block |
---|
Builder.Add.Property(Elements.Office, "ShowPeople", MetaType.Boolean)
.Caption(SwissGerman, "Personen anzeigen")
.Required()
.Transient()
.DefaultExpression("true");
|
There's a fallback available in case the developer needs access to the underlying IMetaProperty
:
Code Block |
---|
Builder.Add.Property(Elements.Office, "ShowPeople", MetaType.Boolean)
.Configure(prop =>
{
// Do something with the IMetaProperty
});
|
Relation
To add a relation simply use:
Code Block |
---|
Builder.Add.Relation(Elements.Company, AssociationType.ZeroOrOneToMany, Elements.Office, MetaPathRule.Cascade)
|
This will return an instance of RelationBuilder
that can be used to further configure the created relation.
...
Code Block |
---|
Builder.Add.Relation(Elements.Company, AssociationType.ZeroOrOneToMany, Elements.Office, MetaPathRule.Cascade)
.Caption(SwissGerman, "Büros")
.InverseCaption(SwissGerman, "Firma")
.Control(nameof(ControlType.GridEditor))
.InverseControl(nameof(ControlType.SearchEdit))
.InverseLayout(LayoutType.Detail, "CompactLayout")
.Rename("Offices");
|
There's a fallback available in case the developer needs access to the underlying generated elements:
Code Block |
---|
Builder.Add.Relation(Elements.Company, AssociationType.ZeroOrOneToMany, Elements.Office, MetaPathRule.Cascade)
.Configure(tuple =>
{
// tuple.relation;
// tuple.inverseRelation;
// tuple.foreignKey;
// tuple.path;
// tuple.index;
});
|
Remove
The Builder
exposes a property Remove
that can be used to either remove a class or property from the model.
Code Block |
---|
Builder.Remove.Class("Office");
Builder.Remove.Property("Office", "Name");
|
Get
The Builder
exposes a property Get
that can be used to either retrieve a class or property from the model.
...