Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more
Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more
A MetaField object represent a meta-class field. Fields represent information that an object contains. Fields are like variables because they can be directly read or set. For example, if you have an object named Car, you can store its color in a field named Color.
Note: When you create and delete meta-enums, remember that you can modify a meta-model only in Design mode. See the MetaClassManager class section.
From the MetaField object, you can get complete information about fields:
Note: Business Foundation (BF) uses a meta-field installer assigned to the meta-type, to add meta-fields to meta-classes.
The collection of meta-fields is available from the MetaClass.Fields property, and it returns a MetaFieldCollection object.
Example: The following example writes all fields to trace
foreach (MetaField field in mc.Fields)
{
System.Diagnostics.Trace.WriteLine(field.Name);
}
Call the CreateMetaField method of the MetaClass class, passing name, friendly name, type, is nullable flag, default value and attributes to create a new meta-field. The attributes depend on the meta-type.
Example: Create a new Guid meta-field
public MetaField CreateGuid(string name, string friendlyName, bool isNullable)
{
if (name == null)
throw new ArgumentNullException("name");
if (friendlyName == null)
throw new ArgumentNullException("friendlyName");
AttributeCollection attr = new AttributeCollection();
string defaultValue = isNullable ? string.Empty : "newid()";
MetaField retVal = this.MetaClass.CreateMetaField(name, friendlyName, MetaFieldType.Guid, isNullable, defaultValue, attr);
return retVal;
}
Call the DeleteMetaField method of the MetaClass class, passing the meta-field object, to delete a field from the meta-class.
Example: Find column by name and drop
// Delete field
mc. DeleteMetaField(mc.Fields\["Book Title"]);
Last updated: Oct 12, 2015