C# Class MonoSoftware.MonoX.DAL.EntityClasses.ListEntity

Inheritance: CommonEntityBase
显示文件 Open project: MonoSoftware/MonoX-Data-Access-Layer Class Usage Examples

Private Properties

Property Type Description
DesetupSyncAspnetApplication void
DesetupSyncAspnetUser void
GetObjectData void
GetRelationsForField RelationCollection
InitClassEmpty void
InitClassMembers void
ListEntity System.Runtime.Serialization
ListEntity System.Runtime.Serialization
OnAspnetApplicationPropertyChanged void
OnAspnetUserPropertyChanged void
SetupCustomPropertyHashtables void
SetupSyncAspnetApplication void
SetupSyncAspnetUser void

Public Methods

Method Description
GetRelationInfoAspnetApplication ( ) : IRelationPredicateBucket

Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'AspnetApplications' to this entity.

GetRelationInfoAspnetUser ( ) : IRelationPredicateBucket

Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'AspnetUsers' to this entity.

GetRelationInfoListItems ( ) : IRelationPredicateBucket

Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'ListItem' to this entity.

ListEntity ( IEntityFields2 fields ) : System.Runtime.Serialization

CTor

For framework usage.

ListEntity ( IValidator validator ) : System.Runtime.Serialization

CTor

ListEntity ( System id ) : System.Runtime.Serialization

CTor

The entity is not fetched by this constructor. Use a DataAccessAdapter for that.

ListEntity ( System id, IValidator validator ) : System.Runtime.Serialization

CTor

The entity is not fetched by this constructor. Use a DataAccessAdapter for that.

Protected Methods

Method Description
AddToMemberEntityCollectionsQueue ( Queue collectionsQueue ) : void

Adds the member collections to the collections queue (base first)

CheckOneWayRelations ( string propertyName ) : bool

Checks if the relation mapped by the property with the name specified is a one way / single sided relation. If the passed in name is null, it/ will return true if the entity has any single-sided relation

CreateEntityFactory ( ) : IEntityFactory2

Creates a new instance of the factory related to this entity

CreateMemberEntityCollectionsQueue ( Queue collectionsQueue, Queue requiredQueue ) : void

Creates the member entity collections queue.

GetAllRelations ( ) : List

Gets a list of all the EntityRelation objects the type of this instance has.

GetDependentRelatedEntities ( ) : List

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.

GetDependingRelatedEntities ( ) : List

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.

GetFromMemberEntityCollectionsQueue ( Queue collectionsQueue ) : void

Gets the member collections queue from the queue (base first)

GetMemberEntityCollections ( ) : List

Gets a list of all entity collections stored as member variables in this entity. Only 1:n related collections are returned.

GetRelatedData ( ) : object>.Dictionary

Gets all related data objects, stored by name. The name is the field name mapped onto the relation for that particular data element.

GetRelationsForFieldOfType ( string fieldName ) : RelationCollection

Gets the relation objects which represent the relation the fieldName specified is mapped on.

HasPopulatedMemberEntityCollections ( ) : bool

Determines whether the entity has populated member collections

PerformDesyncSetupFKFieldChange ( int fieldIndex ) : void

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.

SetRelatedEntity ( IEntityCore relatedEntity, string fieldName ) : void

Sets the internal parameter related to the fieldname passed to the instance relatedEntity.

SetRelatedEntityProperty ( string propertyName, IEntityCore entity ) : void

Sets the related entity property to the entity specified. If the property is a collection, it will add the entity specified to that collection.

Used by prefetch path logic.

UnsetRelatedEntity ( IEntityCore relatedEntity, string fieldName, bool signalRelatedEntityManyToOne ) : void

Unsets the internal parameter related to the fieldname passed to the instance relatedEntity. Reverses the actions taken by SetRelatedEntity()

Private Methods

Method Description
DesetupSyncAspnetApplication ( bool signalRelatedEntity, bool resetFKFields ) : void

Removes the sync logic for member _aspnetApplication

DesetupSyncAspnetUser ( bool signalRelatedEntity, bool resetFKFields ) : void

Removes the sync logic for member _aspnetUser

GetObjectData ( SerializationInfo info, StreamingContext context ) : void
GetRelationsForField ( string fieldName ) : RelationCollection

Gets the relation objects which represent the relation the fieldName specified is mapped on.

InitClassEmpty ( IValidator validator, IEntityFields2 fields ) : void

Initializes the class with empty data, as if it is a new Entity.

InitClassMembers ( ) : void

Initializes the class members

ListEntity ( ) : System.Runtime.Serialization

Static CTor for setting up custom property hashtables. Is executed before the first instance of this entity class or derived classes is constructed.

ListEntity ( SerializationInfo info, StreamingContext context ) : System.Runtime.Serialization
OnAspnetApplicationPropertyChanged ( object sender, PropertyChangedEventArgs e ) : void

Handles property change events of properties in a related entity.

OnAspnetUserPropertyChanged ( object sender, PropertyChangedEventArgs e ) : void

Handles property change events of properties in a related entity.

SetupCustomPropertyHashtables ( ) : void

Initializes the hashtables for the entity type and entity field custom properties.

SetupSyncAspnetApplication ( IEntityCore relatedEntity ) : void

setups the sync logic for member _aspnetApplication

SetupSyncAspnetUser ( IEntityCore relatedEntity ) : void

setups the sync logic for member _aspnetUser

Method Details

AddToMemberEntityCollectionsQueue() protected method

Adds the member collections to the collections queue (base first)
protected AddToMemberEntityCollectionsQueue ( Queue collectionsQueue ) : void
collectionsQueue Queue The collections queue.
return void

CheckOneWayRelations() protected method

Checks if the relation mapped by the property with the name specified is a one way / single sided relation. If the passed in name is null, it/ will return true if the entity has any single-sided relation
protected CheckOneWayRelations ( string propertyName ) : bool
propertyName string Name of the property which is mapped onto the relation to check, or null to check if the entity has any relation/ which is single sided
return bool

CreateEntityFactory() protected method

Creates a new instance of the factory related to this entity
protected CreateEntityFactory ( ) : IEntityFactory2
return IEntityFactory2

CreateMemberEntityCollectionsQueue() protected method

Creates the member entity collections queue.
protected CreateMemberEntityCollectionsQueue ( Queue collectionsQueue, Queue requiredQueue ) : void
collectionsQueue Queue The collections queue.
requiredQueue Queue The required queue.
return void

GetAllRelations() protected method

Gets a list of all the EntityRelation objects the type of this instance has.
protected GetAllRelations ( ) : List
return List

GetDependentRelatedEntities() protected method

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 GetDependentRelatedEntities ( ) : List
return List

GetDependingRelatedEntities() protected method

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 GetDependingRelatedEntities ( ) : List
return List

GetFromMemberEntityCollectionsQueue() protected method

Gets the member collections queue from the queue (base first)
protected GetFromMemberEntityCollectionsQueue ( Queue collectionsQueue ) : void
collectionsQueue Queue The collections queue.
return void

GetMemberEntityCollections() protected method

Gets a list of all entity collections stored as member variables in this entity. Only 1:n related collections are returned.
protected GetMemberEntityCollections ( ) : List
return List

GetRelatedData() protected method

Gets all related data objects, stored by name. The name is the field name mapped onto the relation for that particular data element.
protected GetRelatedData ( ) : object>.Dictionary
return object>.Dictionary

GetRelationInfoAspnetApplication() public method

Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'AspnetApplications' to this entity.
public GetRelationInfoAspnetApplication ( ) : IRelationPredicateBucket
return IRelationPredicateBucket

GetRelationInfoAspnetUser() public method

Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entity of type 'AspnetUsers' to this entity.
public GetRelationInfoAspnetUser ( ) : IRelationPredicateBucket
return IRelationPredicateBucket

GetRelationInfoListItems() public method

Creates a new IRelationPredicateBucket object which contains the predicate expression and relation collection to fetch the related entities of type 'ListItem' to this entity.
public GetRelationInfoListItems ( ) : IRelationPredicateBucket
return IRelationPredicateBucket

GetRelationsForFieldOfType() protected method

Gets the relation objects which represent the relation the fieldName specified is mapped on.
protected GetRelationsForFieldOfType ( string fieldName ) : RelationCollection
fieldName string Name of the field mapped onto the relation of which the relation objects have to be obtained.
return RelationCollection

HasPopulatedMemberEntityCollections() protected method

Determines whether the entity has populated member collections
protected HasPopulatedMemberEntityCollections ( ) : bool
return bool

ListEntity() public method

CTor
For framework usage.
public ListEntity ( IEntityFields2 fields ) : System.Runtime.Serialization
fields IEntityFields2 Fields object to set as the fields for this entity.
return System.Runtime.Serialization

ListEntity() public method

CTor
public ListEntity ( IValidator validator ) : System.Runtime.Serialization
validator IValidator The custom validator object for this ListEntity
return System.Runtime.Serialization

ListEntity() public method

CTor
The entity is not fetched by this constructor. Use a DataAccessAdapter for that.
public ListEntity ( System id ) : System.Runtime.Serialization
id System PK value for List which data should be fetched into this List object
return System.Runtime.Serialization

ListEntity() public method

CTor
The entity is not fetched by this constructor. Use a DataAccessAdapter for that.
public ListEntity ( System id, IValidator validator ) : System.Runtime.Serialization
id System PK value for List which data should be fetched into this List object
validator IValidator The custom validator object for this ListEntity
return System.Runtime.Serialization

PerformDesyncSetupFKFieldChange() protected method

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 PerformDesyncSetupFKFieldChange ( int fieldIndex ) : void
fieldIndex int The fieldindex.
return void

SetRelatedEntity() protected method

Sets the internal parameter related to the fieldname passed to the instance relatedEntity.
protected SetRelatedEntity ( IEntityCore relatedEntity, string fieldName ) : void
relatedEntity IEntityCore Instance to set as the related entity of type entityType
fieldName string Name of field mapped onto the relation which resolves in the instance relatedEntity
return void

SetRelatedEntityProperty() protected method

Sets the related entity property to the entity specified. If the property is a collection, it will add the entity specified to that collection.
Used by prefetch path logic.
protected SetRelatedEntityProperty ( string propertyName, IEntityCore entity ) : void
propertyName string Name of the property.
entity IEntityCore Entity to set as an related entity
return void

UnsetRelatedEntity() protected method

Unsets the internal parameter related to the fieldname passed to the instance relatedEntity. Reverses the actions taken by SetRelatedEntity()
protected UnsetRelatedEntity ( IEntityCore relatedEntity, string fieldName, bool signalRelatedEntityManyToOne ) : void
relatedEntity IEntityCore Instance to unset as the related entity of type entityType
fieldName string Name of field mapped onto the relation which resolves in the instance relatedEntity
signalRelatedEntityManyToOne bool if set to true it will notify the manytoone side, if applicable.
return void