src/Misc/EFTools/EntityDesignModel/Commands/CreatePropertyCommand.cs
/// <summary>
///     Creates a new property in the passed in conceptual entity and optionally sets additional
///     facets on the property.
///     NOTE: If the cpc already has an active transaction, these changes will be in that transaction
///     and the caller of this helper method must commit it to see these changes commited.
/// </summary>
/// <param name="cpc"></param>
/// <param name="name">The name of the property</param>
/// <param name="entityType">Must be a conceptual entity</param>
/// <param name="type">The type to use for this property (cannot be empty)</param>
/// <param name="nullable">Flag whether the property is nullable or not</param>
/// <param name="theDefault">Optional: the default value for this property</param>
/// <param name="concurrencyMode">Optional: the concurrency mode for this property</param>
/// <param name="getterAccessModifier">Optional: Get access modifier.</param>
/// <param name="setterAccessModifier">Optional: Set access modifier.</param>
/// <returns>The new Property</returns>
Creates a new property in the passed in conceptual entity and optionally sets additional
facets on the property.
NOTE: If the cpc already has an active transaction, these changes will be in that transaction
and the caller of this helper method must commit it to see these changes commited.
Creates a new property in the passed in conceptual entity and optionally sets additional facets on the property . NOTE : If the cpc already has an active transaction these changes will be in that transaction and the caller of this helper method must commit it to see these changes commited .
internal static Property CreateConceptualProperty(
            CommandProcessorContext cpc, string name, ConceptualEntityType entityType,
            string type, bool? nullable, StringOrNone theDefault, string concurrencyMode, string getterAccessModifier,
            string setterAccessModifier,
            StringOrPrimitive<UInt32> maxLength, bool? fixedLength, StringOrPrimitive<UInt32> precision, StringOrPrimitive<UInt32> scale,
            bool? unicode, StringOrNone collation, string storeGeneratedPattern, InsertPropertyPosition insertPosition)
        {
            CommandValidation.ValidateConceptualEntityType(entityType);
            var cpcd = new CreatePropertyCommand(name, entityType, type, nullable, insertPosition);
            var scp = new SetConceptualPropertyFacetsCommand(
                cpcd, theDefault, concurrencyMode, getterAccessModifier, setterAccessModifier,
                maxLength, DefaultableValueBoolOrNone.GetFromNullableBool(fixedLength), precision, scale,
                DefaultableValueBoolOrNone.GetFromNullableBool(unicode), collation);
            var scpac = new SetConceptualPropertyAnnotationsCommand(cpcd, storeGeneratedPattern);
            var cp = new CommandProcessor(cpc, cpcd, scp, scpac);
            cp.Invoke();
            return cpcd.CreatedProperty;
        }
internal static Property CreateConceptualProperty ( CommandProcessorContext cpc , string name , ConceptualEntityType entityType , string type , bool ? nullable , StringOrNone theDefault , string concurrencyMode , string getterAccessModifier , string setterAccessModifier , StringOrPrimitive < UInt32 > maxLength , bool ? fixedLength , StringOrPrimitive < UInt32 > precision , StringOrPrimitive < UInt32 > scale , bool ? unicode , StringOrNone collation , string storeGeneratedPattern , InsertPropertyPosition insertPosition ) { CommandValidation . ValidateConceptualEntityType ( entityType ) ; var cpcd = new CreatePropertyCommand ( name , entityType , type , nullable , insertPosition ) ; var scp = new SetConceptualPropertyFacetsCommand ( cpcd , theDefault , concurrencyMode , getterAccessModifier , setterAccessModifier , maxLength , DefaultableValueBoolOrNone . GetFromNullableBool ( fixedLength ) , precision , scale , DefaultableValueBoolOrNone . GetFromNullableBool ( unicode ) , collation ) ; var scpac = new SetConceptualPropertyAnnotationsCommand ( cpcd , storeGeneratedPattern ) ; var cp = new CommandProcessor ( cpc , cpcd , scp , scpac ) ; cp . Invoke ( ) ; return cpcd . CreatedProperty ; }
Creates a new property in the passed in conceptual entity and optionally sets additional
facets on the property.
Creates a new property in the passed in conceptual entity and optionally sets additional facets on the property .
The new Property
The new Property
cpc
CommandProcessorContext
None
name
string
The name of the property
The name of the property
entityType
ConceptualEntityType
Must be a conceptual entity
Must be a conceptual entity
type
string
The type to use for this property (cannot be empty)
The type to use for this property ( cannot be empty )
nullable
bool?
Flag whether the property is nullable or not
Flag whether the property is nullable or not
theDefault
StringOrNone
the default value for this property
the default value for this property
concurrencyMode
string
the concurrency mode for this property
the concurrency mode for this property
getterAccessModifier
string
Get access modifier.
Get access modifier .
setterAccessModifier
string
Set access modifier.
Set access modifier .
maxLength
StringOrPrimitive<UInt32>
fixedLength
bool?
precision
StringOrPrimitive<UInt32>
scale
StringOrPrimitive<UInt32>
unicode
bool?
collation
StringOrNone
storeGeneratedPattern
string
insertPosition
InsertPropertyPosition