Click or drag to resize

EntityCoreTFields Class

Core class for the entity classes in both Adapter and SelfServicing.
Inheritance Hierarchy
SystemObject
  SD.LLBLGen.Pro.ORMSupportClassesEntityCoreTFields
    SD.LLBLGen.Pro.ORMSupportClassesEntityBase
    SD.LLBLGen.Pro.ORMSupportClassesEntityBase2

Namespace:  SD.LLBLGen.Pro.ORMSupportClasses
Assembly:  SD.LLBLGen.Pro.ORMSupportClasses (in SD.LLBLGen.Pro.ORMSupportClasses.dll) Version: 5.11.0.0 (5.11.23.1114)
Syntax
[SerializableAttribute]
public abstract class EntityCore<TFields> : IEntityCore, 
	IEditableObject, IActiveContextParticipant, ITransactionalElement, INotifyPropertyChanged, IXmlSerializable, 
	IDataErrorInfo, ISerializable, IDeserializationCallback
where TFields : IEntityFieldsCore

Type Parameters

TFields

The EntityCoreTFields type exposes the following members.

Constructors
  NameDescription
Protected methodEntityCoreTFields
Initializes a new instance of the EntityCoreTFields class.
Protected methodEntityCoreTFields(Boolean)
Initializes a new instance of the EntityCoreTFields class.
Top
Properties
  NameDescription
Public propertyActiveContext
Gets / sets the active context this entity is in. Setting this property is adding the entity to the context, and it will make contained entities be added to the passed in context as well. If the entity is already in a context, setting this property has no effect. Setting this property is done by framework code, use the Context's Add/Get methods to work with contexts and entities.
Public propertyAuditorToUse
Gets or sets the Auditor for this entity.
Public propertyAuthorizerToUse
Gets or sets the Authorizer for this entity.
Public propertyConcurrencyPredicateFactoryToUse
Gets / sets the IConcurrencyPredicateFactory to use for GetConcurrencyPredicate(ConcurrencyPredicateType).
Protected propertyCustomPropertiesOfType
The custom properties for the type of this entity instance.
Protected propertyDataErrorInfoError
Gets the data error info error message set by SetEntityError
Protected propertyDataErrorInfoErrorsPerField
Gets the stored error messages per field name. Used for IDataErrorInfo. Use this property in your own code to re-channel the error messages through another interface.
Protected propertyDefaultRootElementName
Gets the default name of the root element for XML serialization.
Protected propertyEditCycleInProgress
Gets or sets a value indicating whether an edit cycle is in progress, started through databinding
Public propertyFields
The internal presentation of the data, which is an EntityFields object, which implements IEntityFields2.
Protected propertyFieldsCustomPropertiesOfType
The custom properties for the fields of the type of this entity instance. The returned Hashtable contains per fieldname a hashtable of name-value pairs.
Protected propertyInDesignMode
returns true if the classes are used in design-mode in vs.net.
Protected propertyIsDeserializing
Gets or sets a value indicating whether this instance is deserializing.
Public propertyIsDirty
Marker for the entity object if the object is 'dirty' (changed, true) or not (false). Affects/reads .Fields.IsDirty.
Public propertyIsNew
Marker for the entity object if the object is new and should be inserted when saved (true) or read from the database (false).
Protected propertyIsUpdateOnlyEntity
Gets a value indicating whether this instance is an update only entity. UpdateOnly entities are entities which are 'split off' from the main entity and only update rows in the database, never insert rows.
Protected propertyLLBLGenProEntityTypeEnumType
The EntityType enum type
Protected propertyMarkedForDeletion
flag which is set when the entity is removed from an entity collection and added to a tracker.
Protected propertyObjectID
Gets / sets the unique Object ID which is created at runtime when the entity is instantiated. Can be used for external caches.
Protected propertySavedFields
Gets the saved fields.
Protected propertyTransaction
The ITransaction this ITransactionalElement implementing object is participating in. Only valid if ParticipatesInTransaction is true. If set to null, the ITransactionalElement is no longer participating in a transaction.
Public propertyValidator
The validator object used to validate the entity on several moments in the entity's life.
Top
Methods
  NameDescription
Protected methodAddInternalsToContext
Adds the internals to context.
Protected methodCheckForRefetch
Will check if the entity should refetch itself. Will use the factory pattern trick. Refetching occurs when the fields are marked OutOfSync and thus not dirty.
Protected methodCheckIfCurrentFieldValueIsNull Obsolete.
Checks if the current value of the field on the index specified is null / not defined.
Protected methodCheckIfIsSubTypeOf
Determines whether this entity is a subType of the entity represented by the passed in enum value, which represents a value in the EntityType enum
Protected methodCreateAuditor
Creates the auditor object for this entity. Routine is called when the entity is constructed. Implement in an entity class to set a particular entity auditor object at construction time. Use this method if you don't want to use LLBLGen Pro's build in dependency injection mechanism.
Protected methodCreateAuthorizer
Creates the authorizer object for this entity. Routine is called when the entity is constructed. Implement in an entity class to set a particular entity authorizer object at construction time. Use this method if you don't want to use LLBLGen Pro's build in dependency injection mechanism.
Protected methodCreateConcurrencyPredicateFactory
Creates the concurrency predicate factory for this entity. Routine is called from the entity constructor. Implement in an entity class to set a particular ConcurrentyPredicateFactory object at construction time. Use this method if you don't want to use LLBLGen Pro's build in dependency injection mechanism.
Protected methodCreateEntityFactoryCore
Creates a new entity factory instance related to this entity.
Protected methodCreateFields
Creates entity fields object for this entity. Used in constructor to setup this entity in a polymorphic scenario.
Protected methodCreateTypeDefaultValueProvider
Creates the ITypeDefaultValue instance used to provide default values for value types which aren't of type nullable(of T)
Protected methodCreateValidator
Creates the validator object for this entity. Routine is called when the entity is constructed. Implement in an entity class to set a particular entity validator object at construction time. Use this method if you don't want to use LLBLGen Pro's build in dependency injection mechanism.
Protected methodDeserializeEntityCoreData
Private CTor for deserialization
Protected methodDesetupSync
Destructs the synchronization setup between the related entity and this entity, related over the member specified.
Public methodDiscardSavedFields
Removes all saved field sets from the internal hashtable, clearing up space. This method is also called when an entity is saved.
Protected methodEntity2Xml
Produces the actual XML for this entity, recursively. Because it recurses through referenced entities, it keeps track of which objects are processed so cyclic references are not resulting in cyclic recursion and thus a crash.
Public methodEquals
Compares passed in object with the given object. This is a compare of PK fields. These have to be the same in VALUES. When the values are not the same, or the type is not the same as the current type, false is returned, true otherwise. When this doesn't have any PK fields, all fields are compared. null values are considered as the same value.
(Overrides ObjectEquals(Object).)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Protected methodFixupDeserialization(IFieldInfoProvider)
Fixes deserialization empty references, because fieldinfo isn't serialized into the data.
Protected methodFixupDeserialization(IFieldInfoProvider, IPersistenceInfoProvider)
Fixes deserialization empty references, because fieldinfo isn't serialized into the data.
Protected methodFlagAllFieldsAsChanged
A method to call OnPropertyChanged for all fields to signal to bound controls that all fields have been changed.
Protected methodGetAdditionalRelatedData
Gets the additional related data, next to the data returned by GetRelatedData. This method appends the additional related data to the passed in toAppendTo dictionary. Key is the property name, value is the entity object or entity collection represented by the property.
Protected methodGetAllRelations
Gets a list of all the EntityRelation objects the type of this instance has.
Protected methodGetConcurrencyPredicate
Creates the requested predicate of the type specified. If no IConcurrencyPredicateFactory instance is stored in this entity instance, null is returned.
Public methodGetCurrentFieldValue
Gets the current value of the EntityField2 with the index fieldIndex.
Protected methodGetDependentRelatedEntitiesT
Gets a collection of related entities referenced by this entity which this entity depends on (this entity is the FK side of their PK fields). These entities will have to be persisted before this entity during a recursive save.
Protected methodGetDependentRelatedEntityCoreInstances
Gets a collection of related entities referenced by this entity which this entity depends on (this entity is the FK side of their PK fields). These entities will have to be persisted before this entity during a recursive save.
Protected methodGetDependingRelatedEntitiesT
Gets a collection of related entities referenced by this entity which depend on this entity (this entity is the PK side of their FK fields). These entities will have to be persisted after this entity during a recursive save.
Protected methodGetDependingRelatedEntityCoreInstances
Gets a collection of related entities referenced by this entity which depend on this entity (this entity is the PK side of their FK fields). These entities will have to be persisted after this entity during a recursive save.
Protected methodGetEntityDescription
Gets the entity description. This string is used in verbose trace messages. It will produce "EntityCore", if verbose tracing is switched off for the GeneralSwitch, to prevent performance loss due to reflection activity for trace results which will never be seen.
Protected methodGetEntityStaticMetaData
Gets the entity static meta data instance from the generated type.
Protected methodGetEntitySyncInformation
Will retrieve all stored entity synchronization information for the passed in entity. If no information is stored, an empty hashtable is returned. All sync info is stored by fieldname
Protected methodGetEntityTypeValue
Gets the EntityType value as int for this entity.
Public methodGetHashCode
Overrides the GetHashCode method. It will calculate a hashcode for this entity using the eXclusive OR of the hashcodes of the primary key fields in this entity. That hashcode is returned. If no primary key fields are present, the hashcode of the base class is returned, which will not be unique.
(Overrides ObjectGetHashCode.)
Protected methodGetInheritanceInfoProvider
Gets the inheritance info provider instance of the project this entity instance is located in.
Protected methodGetMemberEntityCollectionCoreInstances
Gets a list of all entity collections stored as member variables in this entity. The contents of the list is used by the DataAccessAdapter to perform recursive saves. Only 1:n related collections are returned.
Protected methodGetObjectData
ISerializable member. Does custom serialization so event handlers do not get serialized.
Protected methodGetRelatedData
Gets all related data objects, stored by name. The name is the field name mapped onto the relation for that particular data element.
Protected methodGetRelationsForFieldOfType
Gets the relation objects which represent the relation the fieldName specified is mapped on.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodGetValue
Gets the value of the field with the index specified.
Protected methodMarkFieldsAsDirty
Marks the fields as dirty.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnAuditDeleteOfEntity
Audits the successful delete of an entity from the database
Protected methodOnAuditDereferenceOfRelatedEntity
Audits the successful dereference of related entity from the entity passed in.
Protected methodOnAuditDirectDeleteOfEntities
Audits the successful direct delete of entities in the database
Protected methodOnAuditDirectInsertOfEntities
Audits the successful direct insert of entities into the database
Protected methodOnAuditDirectUpdateOfEntities
Audits the succesful direct update of entities in the database.
Protected methodOnAuditEntityFieldGet
Audits when an entity field's value is succesfully obtained from the passed in entity
Protected methodOnAuditEntityFieldSet
Audits when an entity field is set succesfully to a new value.
Protected methodOnAuditInsertOfNewEntity
Audits the successful insert of a new entity into the database.
Protected methodOnAuditLoadOfEntity
Audits the successful load of an entity from the database
Protected methodOnAuditReferenceOfRelatedEntity
Audits the successful reference of related entity from the entity passed in.
Protected methodOnAuditUpdateOfExistingEntity
Audits the successful update of an existing entity in the database
Protected methodOnBeforeEntitySave
This method is called from the DataAccessAdapter method OnBeforeEntitySave(), unless that method is overriden. You can override this OnSave method instead, which allows you to make last minute changes, though keep the logic to do that in the entity.
Protected methodOnBeginEdit
Called after BeginEdit is succesfully called.
Protected methodOnCanBatchDeleteEntitiesDirectly
Method which will check if the caller is allowed to delete entities directly in the database.
Protected methodOnCanBatchInsertEntitiesDirectly
Method which will check if the caller is allowed to insert entities directly into the database
Protected methodOnCanBatchUpdateEntitiesDirectly
Method which will check if the caller is allowed to update entities directly in the database.
Protected methodOnCancelEdit
Called after CancelEdit is succesfully called.
Protected methodOnCanDeleteEntity
Method which will check if the caller is allowed to delete this existing entity object
Protected methodOnCanGetFieldValue
Method which will check if the caller is allowed to get the field value with the index specified.
Protected methodOnCanLoadEntity
Method which will check if the caller is allowed to fill this entity object with entity data from the database or not.
Protected methodOnCanSaveExistingEntity
Method which will check if the caller is allowed to save this existing entity object
Protected methodOnCanSaveNewEntity
Method which will check if the caller is allowed to save this new entity object
Protected methodOnCanSetFieldValue
Method which will check if the caller is allowed to set the field value with the index specified.
Protected methodOnDeserialized
Called at the end of the deserialization constructor. Method is used when this object is deserialized. Override this method to tap into the deserialization sequence. (binary/soap formatter specific).
Protected methodOnEndEdit
Called after EndEdit is succesfully called.
Protected methodOnEntityAfterSave
Event handler which is called by a related entity after that entity is persisted.
Protected methodOnEntityContentsChanged
Called when the entity's contents has been changed.
Protected methodOnFieldValueChanged
Method which is called right after a field's value has been changed. There are a couple of methods called in the process of setting a field's value. This particular method is solely there to act on a field's value set action. It doesn't raise an event, though it receives the old and new value of the field. Not called if a fieldvalue set action failed. This method is called before changed events are raised.
Protected methodOnGetFetchNewAuthorizationFailureResultHint
Returns the FetchNewAuthorizationFailureResultHint as returned by the authorizer. Only called when the CanGetLoad failed (authorization failed, so load was denied)
Protected methodOnGetObjectData
Called at the end of GetObjectData. Method is used when this object is serialized. Override this method to tap into the serialization sequence. (binary/soap formatter specific).
Protected methodOnGetValue
Called right at the beginning of GetValue(), which is called from an entity field property getter
Protected methodOnGetValueComplete
Called right at the end of GetValue(), which is called from an entity field property getter
Protected methodOnInitClassMembersComplete
Called when InitClassMembers is complete.
Protected methodOnInitialized
Called at the end of the initialization method. Raises Initialized event.
Protected methodOnInitializing
Called at the start of the initialization method. Raises Initializing event.
Protected methodOnPropertyChanged
Called when a property changed value. Call this method to signal databound controls a property has changed.
Protected methodOnRelatedEntitySet
Method which is called at the end of the SetRelatedEntity() method. Usable to act on the fact that a related entity has been set.
Protected methodOnRelatedEntityUnset
Method which is called at the end of the UnsetRelatedEntity() method. Usable to act on the fact that an entity has been dereferenced as a related entity by the containing entity.
Protected methodOnRequiresTransactionForAuditEntities
Method which returns true if this auditor expects to have audit entities to persist and therefore needs a transaction. This method is called in the situation when there's no transaction going on though one should be started right before the single-statement action in the case if the auditor has entities to save afterwards. It's recommended to return true if the auditor might have audit entities to persist after an entity save/delete/direct update/direct delete/direct insert of entities. Default: false
Protected methodOnSetRelatedEntityProperty
Method which is called in the default clause of the SetRelatedEntityProperty method during the merge process of prefetch path fetches.
Protected methodOnSetValue
Called right at the beginning of SetValue(), which is called from an entity field property setter
Protected methodOnSetValueComplete
Called right at the end of SetValue(), which is called from an entity field property setter
Protected methodOnTransactionCommit
Called after the TransactionCommit method has been finished.
Protected methodOnTransactionRollback
Called after the TransactionRollback method has been finished.
Protected methodOnValidateEntityAfterLoad
Method to validate the containing entity after it is loaded. This method is called after the entity has been fully loaded.
Protected methodOnValidateEntityAfterSave
Method to validate the containing entity right after the entity's save action has been completed and the entity has been refetched (if applicable). Note for adapter users: if the entity wasn't set to be refetched, take into account that reading properties from the containing entity will result in an OutOfSync exception.
Protected methodOnValidateEntityBeforeDelete
Method to validate the containig entity right beforethe entity's delete action will take place.
Protected methodOnValidateEntityBeforeSave
Method to validate the containing entity right before the save sequence for the entity will start. LLBLGen Pro will call this method right after the containing entity is selected from the save queue to be saved.
Protected methodOnValidateFieldValue
Method which will validate, using custom code supplied this class, the field with index fieldIndex if it should accept the specified value. This method is only called when standard checks already succeeded, so value isn't null, and value does match the destination column definition of the EntityField related to fieldIndex.
Protected methodPerformCustomXmlDeserialization
Performs custom XML deserialization for properties which have the CustomXmlSerializationAttribute. The xmlreader should be used to read the xml from. The reader is positioned on the StartElement of the property which has the name of the property. Check if the element is empty and if not, read till the reader is positioned on the EndElement of the property (which also has the same name). Your override has to set the property's value, using the descriptor's SetValue method.
Protected methodPerformCustomXmlSerialization
Performs custom XML serialization for properties which have the CustomXmlSerializationAttribute. Override this method if for some property the data has to be serialized into the output. The xmlwriter should be used to write xml to. You shouldn't emit a startelement with the propertyname, that's already done. Also you shouldn't emit an endelement with the propertyname, that will be done for you. Simply emit XML with the data. Be sure the xml data is valid. You can use the XmlHelper class if necessary.
Protected methodPerformDependencyInjection
Performs the dependency injection of related objects. This method will call the Create* methods to create validator, concurrency predicate factory and will then kick in the DependencyInjection functionality build into LLBLGen Pro. This method is called at the end of an entity's InitClassMembers method in the generated code.
Protected methodPerformDesyncSetupFKFieldChange
Performs the desync setup when an FK field has been changed. The entity referenced based on the FK field will be dereferenced and sync info will be removed.
Protected methodPerformPostReadXmlFixups
Routine which is used to perform tasks after a ReadXml() action on this entity instance was performed
Protected methodPerformRelatedEntityRemoval
Performs the related entity removal.
Protected methodPostFieldValueSetAction
Method to perform post-fieldvalue set actions, like flagging this object as changed.
Protected methodPostProcessValueToGet
Post-processes the value to return from GetValue. Override this method to be able to post-process any value to return from an entity field's property.
Protected methodPreProcessValueToSet
Method which is meant to be overriden to pre-process a value right before it is set as a field's new value. In general you don't need to override this method. By default it's a no-op.
Public methodReadXml(String)
Will fill the entity and its containing members (recursively) with the data stored in the XmlNode passed in. The XmlNode has to be filled with Xml in the format written by IEntityCore.WriteXml() and the Xml has to be compatible with the structure of this entity collection.
Public methodReadXml(XmlNode)
Will fill the entity and its containing members (recursively) with the data stored in the XmlNode passed in. The XmlNode has to be filled with Xml in the format written by IEntityCore.WriteXml() and the Xml has to be compatible with the structure of this entity collection.
Public methodReadXml(XmlReader)
Constructs an object graph with this object as the root from the xml contained by the passed in XmlReader object.
Protected methodReadXml(XmlNode, XmlFormatAspect)
Will fill the entity and its containing members (recursively) with the data stored in the XmlNode passed in. The XmlNode has to be filled with Xml in the format written by IEntityCore.WriteXml() and the Xml has to be compatible with the structure of this entity collection.
Public methodReadXml(XmlReader, XmlFormatAspect)
Constructs an object graph with this object as the root from the xml contained by the passed in XmlReader object.
Protected methodReadXmlExplicitImpl
Constructs an object graph with this object as the root from the xml contained by the passed in XmlReader object. The method which is called from the explicit implementation of IXmlSerializable.ReadXml(reader).
Protected methodRemoveFromParentCollection
Removes this instance from the parent collection (if present), to which it was added through databinding
Public methodRollbackFields
Replaces the current set of fields with the fields saved under the name specified. If no set of fields is found with the name specified an exception is thrown. Removes the entry after a succesful rollback.
Public methodSaveFields
Saves the current set of fields under the name specified in an internal hashtable. All data inside the field objects is preserved. If there is already a set of fields saved under the name specified, that set of fields is overwritten.
Protected methodSetAlreadyFetchedValueForNavigator
Sets the _alreadyFetched*Navigatorname* flag for the navigator specified to the value specified.
Protected methodSetDiscriminatorFlagIfRequired
Sets the discriminator flag if required.
Public methodSetEntityError
Sets the error message which is returned by IDataErrorInfo.Error
Public methodSetEntityFieldError
Sets the error message for the field specified. If there's already a message stored for this field, it's overwritten unless append is set to true, which appends the message to the existing error using a semi-colon as separator. The message stored is returned by IDataErrorInfo[fieldName];
Protected methodSetEntitySyncInformation
Will set the passed in information as Entity sync information. If there is no sync information stored yet for the related entity then a new entry is created, otherwise it's info is added to the sync information of this entity, if it isn't already present. If there is already sync information for this field stored for another related entity, that information is removed.
Public methodSetNewFieldValue(Int32, Object)
Sets the EntityField2 on index fieldIndex to the new value value. Marks also the entityfields2 as dirty.
Public methodSetNewFieldValue(String, Object)
Sets the EntityField with the name fieldName to the new value value. Marks also the entityfields as dirty. Will refetch the complete entity's fields from the database if necessary (i.e. the entity is outofsync.).
Protected methodSetNewFieldValue(Int32, Object, Boolean) Obsolete.
Sets the Entity Field on index fieldIndex to the new value value. Marks also the entityfields2 as dirty.
Protected methodSetRelatedEntity
Sets the internal parameter related to the fieldname passed to the instance relatedEntity.
Protected methodSetRelatedEntityProperty
Sets the related entity property to the entity specified. If the property is a collection, it will add the entity specified to that collection.
Protected methodSetupSyncT
Sets up the synchronization between the related entity and this entity, related over the member specified.
Protected methodSetValue(Int32, Object)
Sets the value of the field with the index specified to the value specified.
Protected methodSetValue(Int32, Object, Boolean)
Sets the EntityField on index fieldIndex to the new value value. Marks also the entityfields as dirty. Will refetch the complete entity's fields from the database if necessary (i.e. the entity is outofsync.).
Protected methodSetValue(Int32, Object, Boolean, Boolean)
Sets the value of the field with the index specified to the value specified.
Protected methodSyncFKFields
Synchronizes the PK values of the dataSupplier with the related FK values of this entity.
Public methodTestCurrentFieldValueForNull Obsolete.
Returns true if the current value for the field with the fieldIndex passed in represents null/not defined, false otherwise. Should not be used for testing if the original value (read from the db) is NULL
Public methodTestOriginalFieldValueForNull
Returns true if the original value for the field with the fieldIndex passed in, read from the persistent storage was NULL, false otherwise. Should not be used for testing if the current value is NULL, use TestCurrentFieldValueForNull(Enum) for that.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Protected methodUnsetEntitySyncInformation
Will unset (remove) the passed in information as Entity sync information. If there is no sync information stored for the related entity after this info has been removed, the complete hashentry is removed.
Protected methodUnsetRelatedEntity
Unsets the internal parameter related to the fieldname passed to the instance relatedEntity. Reverses the actions taken by SetRelatedEntity()
Protected methodValidate Obsolete.
Method to keep code compilable however which is now marked as obsolete, as people should call ValidateEntity.
Public methodValidateEntity
General validation method which isn't used by the LLBLGen Pro framework, but can be used by your own code to validate an entity at any given moment.
Public methodWriteXml(String)
Converts this entity to XML, recursively. Uses the LLBLGenProEntityName for the rootnode name
Public methodWriteXml(XmlWriter)
Constructs the XML output from the object graph which has this object as the root.
Public methodWriteXml(String, String)
Converts this entity to XML, recursively.
Public methodWriteXml(XmlDocument, XmlNode)
Converts this entity to XML, recursively. Uses the LLBLGenProEntityName for the rootnode name
Public methodWriteXml(XmlWriter, XmlFormatAspect)
Converts this entity to XML
Public methodWriteXml(XmlFormatAspect, String)
Converts this entity to XML, recursively. Uses the LLBLGenProEntityName for the rootnode name
Public methodWriteXml(String, XmlDocument, XmlNode)
Converts this entity to XML, recursively.
Public methodWriteXml(XmlWriter, XmlFormatAspect, String)
Converts this entity to XML
Public methodWriteXml(XmlFormatAspect, String, String)
Converts this entity to XML, recursively.
Public methodWriteXml(XmlFormatAspect, XmlDocument, XmlNode)
Converts this entity to XML, recursively. Uses the LLBLGenProEntityName for the rootnode name
Public methodWriteXml(XmlWriter, XmlFormatAspect, String, DictionaryGuid, IEntityCore)
Converts this entity to XML
Public methodWriteXml(XmlFormatAspect, String, XmlDocument, XmlNode)
Converts this entity to XML, recursively.
Protected methodXml2Entity(XmlNode, DictionaryGuid, IEntityCore, ListNodeEntityReference)
Performs the actual conversion from Xml to entity data.
Protected methodXml2Entity(XmlReader, DictionaryGuid, IEntityCore, ListNodeEntityReference)
Performs the actual conversion from Xml to entity data.
Top
Events
  NameDescription
Public eventAfterSave
Event handler declaration for the event that is fired each time this entity is persisted. Related entities can subscribe to this event to start housekeeping actions, like syncing internal FK fields with the PK fields of this entity.
Public eventEntityContentsChanged
Event handler declaration for the event that is fired each time the one of values of this entity are changed. The event does not contain the value / field which is changed, it only signals subscribers the entity is changed and the subscriber should act accordingly, f.e. fire a ListChanged event.
Public eventInitialized
Event which is raised at the end of the initialization method of the entity. This event is also raised if the entity is pre-filled with a filled EntityFields(2) object. In your handler, check the State property of the entity Fields to see if you're dealing with a new entity or with an entity which is new, but pre-initialized with filled field objects.
Public eventInitializing
Event which is raised at the start of the initialization method of the entity. The entity is clean and has no entity fields object yet.
Public eventPropertyChanged
Event fired when a field / property is changed. To fire this event from a derived class, call OnPropertyChanged.
Top
Fields
  NameDescription
Public fieldStatic memberAllowReadsFromDeletedEntities
Flag (default: false) which controls whether reading from an entity object which has been deleted (its Fields.State is EntityState.Deleted) results in an ORMEntityIsDeletedException (false) or not (true).
Public fieldStatic memberBuildInValidationBypassMode
The mode (default: NoBypass) to use for the build-in validation checks. Build-in validation checks are performed on every value a field is set to, unless this mode is set to a different value than NoBypass which makes the code to bypass these build-in validation checks. The build-in validation checks are used to prevent overflow exceptions when the entity is persisted to the database.
Public fieldStatic memberMakeInvalidFieldReadsFatal
Flag (default: false), which can be used to track down errors in code at runtime when migrating from LLBLGen Pro v1.0.xx to v2.0. When set to true, it will make invalid field reads fatal and will make the entity throw an ORMInvalidFieldReadException when a field is read while the field's value hasn't been set yet.
Public fieldStatic memberMakeSettingNonNullableFieldsToNullFatal
Flag (default: false) which directs the built-in validation logic to throw an ArgumentOutOfRangeException exception when a field which is non-nullable is set to null / nothing. When false, the set action is silently ignored if a non-nullable field is set to null and results in a no-op, which is the behavior of v4.2 and earlier. When true, the set action results in the ArgumentOutOfRangeException.
Public fieldStatic memberMarkSavedEntitiesAsFetched
Flag (default: false) which controls if saved entities which aren't fetched back in the same call should be marked as Fetched instead of the default 'OutOfSync'. Setting this to true can save fetch roundtrips to the database to refetch data for the entity already in memory. However setting this setting to true can also cause getting the entity out of sync with the database because another thread has updated the same entity data. Use with care. It's recommended to leave it on its default value: false and only set this to true if you're sure the data in-memory reflects the entity data in the database.
Public fieldStatic memberScaleOverflowCorrectionActionToUse
The action to use when the build-in validation detects a scale overflow (e.g. scale of a field is 2, and the value to set the field to is 10.455, which has a scale of 3). Default is 'Truncate', which means that the overflow value will be truncated to the scale size. If validation is bypassed by setting BuildInValidationBypassMode to a value which makes the build-in validation to be bypassed, this setting has no effect.
Public fieldStatic memberValidatePrecisionScaleSingleDoubleValues
Flag (default: true, for backwards compatibility). When set to true, build-in validation will check precision/scale lengths on values when setting a single/double field. As precision/scale validation can't actually be done reliably on single/double fields (as they're IEEE encoded) this flag should be set to false once to switch off this behavior in the build-in validation if this validation gives problematic results.
Top
Explicit Interface Implementations
  NameDescription
Explicit interface implementationPrivate methodIEditableObjectBeginEdit
Begins an edit on an object.
Explicit interface implementationPrivate methodIEditableObjectCancelEdit
Explicit interface implementationPrivate methodIEditableObjectEndEdit
Explicit interface implementationPrivate propertyIDataErrorInfoError
Gets an error message indicating what is wrong with this object.
Explicit interface implementationPrivate methodISerializableGetObjectData
Populates a SerializationInfo with the data needed to serialize the target object.
Explicit interface implementationPrivate methodIXmlSerializableGetSchema
Produce the schema, always return null, as the XmlSerializer object otherwise can't handle our code.
Explicit interface implementationPrivate propertyIDataErrorInfoItem
Gets the String with the specified column name.
Explicit interface implementationPrivate methodIDeserializationCallbackOnDeserialization
Runs when the entire object graph has been deserialized.
Explicit interface implementationPrivate methodIXmlSerializableReadXml
Constructs an object graph with this object as the root from the xml contained by the passed in XmlReader object.
Explicit interface implementationPrivate methodIEntityCoreAcceptChanges
Accepts the changes made to the fields. Used in databinding/service scenarios. Calls AcceptChanges on the fields in this entity
Explicit interface implementationPrivate methodIEntityCoreCheckIfEntityHasPendingFkSyncsTEntity
Checks whether this instance has pending fk syncs. A pending FK sync is a sync which hasn't been used yet. If an entity has pending FK syncs, it has to be included into a save queue. Only syncs with entities in the passed in queue are considered. If a sync is with an entity which isn't in the passed in queue, the sync isn't honoured anyway, so the fk sync can be ignored.
Explicit interface implementationPrivate methodIEntityCoreCheckIfIsSubTypeOf
Determines whether this entity is a subType of the entity represented by the passed in enum value, which represents a value in the EntityType enum
Explicit interface implementationPrivate propertyIEntityCoreCustomPropertiesOfType
The custom properties for the type of this entity instance.
Explicit interface implementationPrivate methodIEntityCoreDiscardSavedFields
Removes all saved field sets from the internal hashtable, clearing up space. This method is also called when an entity is saved.
Explicit interface implementationPrivate propertyIEntityCoreFields
Gets the fields object of this entity.
Explicit interface implementationPrivate propertyIEntityCoreFieldsCustomPropertiesOfType
The custom properties for the fields of the type of this entity instance. The returned Hashtable contains per fieldname a hashtable of name-value pairs.
Explicit interface implementationPrivate methodIEntityCoreFlagAsSaved
Flags me as saved.
Explicit interface implementationPrivate methodIEntityCoreFlagMeAsChanged
Routine which will flag all subscribers of the EntityContentsChanged event that this entity's contents is changed.
Explicit interface implementationPrivate methodIEntityCoreGetAllRelations
Gets a list of all the EntityRelation objects the type of this instance has.
Explicit interface implementationPrivate methodIEntityCoreGetConcurrencyPredicate
Creates the requested predicate of the type specified. If no IConcurrencyPredicateFactory instance is stored in this entity instance, null is returned.
Explicit interface implementationPrivate methodIEntityCoreGetDependentRelatedEntities
Gets a collection of related entities referenced by this entity which this entity depends on (this entity is the FK side of their PK fields). These entities will have to be persisted before this entity during a recursive save.
Explicit interface implementationPrivate methodIEntityCoreGetDependingRelatedEntities
Gets a collection of related entities referenced by this entity which depend on this entity (this entity is the PK side of their FK fields). These entities will have to be persisted after this entity during a recursive save.
Explicit interface implementationPrivate methodIEntityCoreGetEntityDescription(Boolean)
Gets the entity description. This string is used in verbose trace messages. It will produce "EntityCore", if the passed in switch flag is false, to prevent performance loss due to reflection activity for trace results which will never be seen.
Explicit interface implementationPrivate methodIEntityCoreGetEntityDescription(Boolean, IEntityCore)
Gets the entity description. This string is used in verbose trace messages. It will produce "EntityCore", if verbose tracing is switched off for the GeneralSwitch, to prevent performance loss due to reflection activity for trace results which will never be seen.
Explicit interface implementationPrivate methodIEntityCoreGetEntityFactory
Returns a new ready to use factory for the type of this instance.
Explicit interface implementationPrivate methodIEntityCoreGetFieldByName
Helper method which performs a lookup in the fields based on the name specified.
Explicit interface implementationPrivate methodIEntityCoreGetInheritanceInfo
Gets the inheritance info for this entity, if applicable (it's then overriden) or null if not.
Explicit interface implementationPrivate methodIEntityCoreGetInheritanceInfoProvider
Gets the inheritance info provider instance of the project this entity instance is located in.
Explicit interface implementationPrivate methodIEntityCoreGetMemberEntityCollections
Gets a list of all entity collections stored as member variables in this entity. The contents of the list is used by the DataAccessAdapter to perform recursive saves. Only 1:n related collections are returned.
Explicit interface implementationPrivate methodIEntityCoreGetRelatedData
Gets all related data objects, stored by name. The name is the field name mapped onto the relation for that particular data element.
Explicit interface implementationPrivate methodIEntityCoreGetRelationsForFieldOfType
Gets the relation objects which represent the relation the fieldName specified is mapped on.
Explicit interface implementationPrivate propertyIEntityCoreIsDeserializing
Returns true if this entity instance is in the middle of a deserialization process, for example during a ReadXml() call. For internal use only.
Explicit interface implementationPrivate propertyIEntityCoreIsUpdateOnlyEntity
Gets a value indicating whether this instance is an update only entity. UpdateOnly entities are entities which are 'split off' from the main entity and only update rows in the database, never insert rows.
Explicit interface implementationPrivate propertyCode exampleIEntityCoreLLBLGenProEntityName
Returns the full name for this entity, which is important for the DAO to find back persistence info for this entity.
Explicit interface implementationPrivate propertyIEntityCoreLLBLGenProEntityTypeValue
Returns the EntityType enum value for this entity.
Explicit interface implementationPrivate propertyIEntityCoreLLBLGenProIsInHierarchyOfType
Gets the type of the hierarchy this entity is in.
Explicit interface implementationPrivate propertyIEntityCoreMarkedForDeletion
flag which is set when the entity is removed from an entity collection and added to a tracker.
Explicit interface implementationPrivate propertyIEntityCoreObjectID
Gets / sets the unique Object ID which is created at runtime when the entity is instantiated. Can be used for external caches.
Explicit interface implementationPrivate propertyIEntityCorePrimaryKeyFieldInfos
Gets the primary key field infos. Similar to PrimaryKeyFields, but this property doesn't trigger field creation.
Explicit interface implementationPrivate propertyIEntityCorePrimaryKeyFields
List of IEntityField2 references which form the primary key. Reads/Affects .Fields.PrimaryKeyFields. If possible use PrimaryKeyFieldInfos instead.
Explicit interface implementationPrivate methodIEntityCoreRejectChanges
Rejects the changes made to the fields. Used in databinding/service scenarios. Calls RejectChanges on the fields in this entity
Explicit interface implementationPrivate methodIEntityCoreRollbackFields
Replaces the current set of fields with the fields saved under the name specified. If no set of fields is found with the name specified an exception is thrown. Removes the entry after a succesful rollback.
Explicit interface implementationPrivate methodIEntityCoreSaveFields
Saves the current set of fields under the name specified in an internal hashtable. All data inside the field objects is preserved. If there is already a set of fields saved under the name specified, that set of fields is overwritten.
Explicit interface implementationPrivate methodIEntityCoreSetRelatedEntity
Sets the internal parameter related to the fieldname passed to the instance relatedEntity.
Explicit interface implementationPrivate methodIEntityCoreSetRelatedEntityProperty
Sets the related entity property to the entity specified. If the property is a collection, it will add the entity specified to that collection.
Explicit interface implementationPrivate propertyIEntityCoreTypeDefaultValueProviderToUse
Gets or sets the TypeDefaultValue provider to use. This object is used to provide default values for value typed fields which are null and not of type Nullable(Of T)
Explicit interface implementationPrivate methodIEntityCoreUnsetRelatedEntity(IEntityCore, String)
Unsets the internal parameter related to the fieldname passed to the instance relatedEntity. Reverses the actions taken by SetRelatedEntity()
Explicit interface implementationPrivate methodIEntityCoreUnsetRelatedEntity(IEntityCore, String, Boolean)
Unsets the internal parameter related to the fieldname passed to the instance relatedEntity. Reverses the actions taken by SetRelatedEntity()
Explicit interface implementationPrivate propertyITransactionalElementParticipatesInTransaction
Flag to check if the ITransactionalElement implementing object is participating in a transaction or not.
Explicit interface implementationPrivate propertyITransactionalElementTransaction
The ITransaction this ITransactionalElement implementing object is participating in. Only valid if ParticipatesInTransaction is true. If set to null, the ITransactionalElement is no longer participating in a transaction.
Explicit interface implementationPrivate methodITransactionalElementTransactionCommit
When the ITransaction in which this element participates is commited, this element can succesfully finish actions performed by this element. This method is called by ITransaction, you should not call it by yourself. When this element doesn't participate in a transaction it finishes the actions itself, calling this method is not needed.
Explicit interface implementationPrivate methodITransactionalElementTransactionRollback
When the ITransaction in which this element participates is rolled back, this element has to roll back its internal variables. This method is called by ITransaction, you should not call it by yourself.
Top
See Also