    

 ## On this page

  

 

 # Class EntityBase

 Last update: 09.03.2026 

<a id="VM_Managed_EntityBase"></a>

Namespace: [VM.Managed](VM.Managed.md)  
Assembly: VMObjBase.dll

This bsse class is to represent the entity base.

```csharp
public abstract class EntityBase : ContainerObject<EntityEventCore>, IObservableObject, IDisposableObject, ILinkable, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer, IContainer, IEntity, IEntityBase, IObjectBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasKeyObject, IHasName, IEnabled, IHasComment, IVisible, IDocumentOwner, INamed, INavigatorItem, IVisible, IMultiChangable, IHasProperty

```

#### Inheritance

object ← ObservableObject ← [LinkableBase](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/Pre/Data/VM.Models.Pre/Models/LinkableBase.cs) ← ObjectBase ← Object&lt;EntityEventCore&gt; ← ContainerObject&lt;EntityEventCore&gt; ← [EntityBase](VM.Managed.EntityBase.md)

#### Derived

[Entity&lt;TProperty&gt;](VM.Managed.Entity-1.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, ILinkContainerEvent, IVerifiable, [IHistoryObjectSerializable](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/ClassicPre/Data/VMHist/Interfaces.cs), IAttributeContainer, IContainer, IEntity, IEntityBase, IObjectBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasKeyObject, IHasName, IEnabled, IHasComment, IVisible, IDocumentOwner, INamed, INavigatorItem, IVisible, IMultiChangable, [IHasProperty](VM.Managed.IHasProperty.md)

#### Inherited Members

ContainerObject&lt;EntityEventCore&gt;.Find(string), ContainerObject&lt;EntityEventCore&gt;.FindLocal(string), ContainerObject&lt;EntityEventCore&gt;.GetUnnamedObjectName(object), ContainerObject&lt;EntityEventCore&gt;.GetNewEntityName(string), ContainerObject&lt;EntityEventCore&gt;.GetNewEntityName(string, bool, int), ContainerObject&lt;EntityEventCore&gt;.GetNewEntityName(string, bool, int, int), Object&lt;EntityEventCore&gt;.GetKey(), Object&lt;EntityEventCore&gt;.Initialize(Unit.ConvertFactor), Object&lt;EntityEventCore&gt;.SetIconColor(Canvas), Object&lt;EntityEventCore&gt;.OnDeserialization(object), Object&lt;EntityEventCore&gt;.CustomGetObjectData(SerializationInfo, StreamingContext), Object&lt;EntityEventCore&gt;.RollbackEvent(), Object&lt;EntityEventCore&gt;.OnDeserializedCore(object), Object&lt;EntityEventCore&gt;.Key, Object&lt;EntityEventCore&gt;.UntypedEventCore, Object&lt;EntityEventCore&gt;.EventCore, Object&lt;EntityEventCore&gt;.Attributes, ObjectBase.ReplaceEventCore(ObjectEventCore), ObjectBase.SetModifiedCore(ModifiedResult.ModifiedType), ObjectBase.AddPostDeserialize(StreamingContext), ObjectBase.LinkAddedToDocumentCore(IOwned, bool), ObjectBase.SetModified(ModifiedResult.ModifiedType), ObjectBase.SetModified(), ObjectBase.SetModified(ModifiedResult.ModifiedType, IDocument), ObjectBase.DestroyObject(object, LinkEventArgs), ObjectBase.DestroyObject(DestroyEventArgs), ObjectBase.DestroyObject(), ObjectBase.Initialize(Unit.ConvertFactor), ObjectBase.FixUp(ObjectBase), ObjectBase.DoWorkAfterUpdateContents(), ObjectBase.SetOldNameWithNewEntity(ObjectBase, ObjectBase), ObjectBase.SetIconColor(Canvas), ObjectBase.RemoveFromCreatedList(), ObjectBase.PostAddToDocument(), ObjectBase.PostRemoveFromDocument(Document), ObjectBase.GetArgumentList(LinkedList&lt;ObjectBase&gt;), ObjectBase.ResetInvalidEntity(), ObjectBase.OnDeserialization(object), ObjectBase.IsSerializableEvent(Delegate), ObjectBase.CustomGetObjectData(SerializationInfo, StreamingContext), ObjectBase.CheckAndUpdateLink(HashSet&lt;ObjectBase&gt;), ObjectBase.Verify(VerifiedResult), ObjectBase.ConnectProxy(), ObjectBase.RollbackEvent(), ObjectBase.LinkRequestUpdating(object, LinkEventArgs), ObjectBase.LinkRequestUpdate(object, LinkEventArgs), ObjectBase.LinkRequestDestroying(object, LinkEventArgs), ObjectBase.LinkRequestDestroy(object, LinkEventArgs), ObjectBase.LinkAddedToDocument(object, AddToDocEventArgs), ObjectBase.LinkRemovedFromDocument(object, RemoveFromDocEventArgs), ObjectBase.DisposeManagedResources(), ObjectBase.GetDestroyEventExtraData(), ObjectBase.OnLinkReserved(ILink, object, EventArgs), ObjectBase.CreateEntityWhenUpdateContents(Action), ObjectBase.GetObjectByKey(UIntPtr), ObjectBase.FindObjectOnXmlDeserialize(string), ObjectBase.UpdateContents(XmlReader, ObjectBase, string), ObjectBase.UpdateContents(XmlReader, ObjectBase), ObjectBase.UpdateContents(string, string), ObjectBase.UpdateContents(string), ObjectBase.SetFlagWhenXMLFile(string, bool), ObjectBase.IsEqualArray&lt;T&gt;(T\[\], T\[\]), ObjectBase.IsEqualList(List&lt;double&gt;, List&lt;double&gt;), ObjectBase.SetContainer(IOwned, bool), ObjectBase.GetTargetListForUpdate(), ObjectBase.SkipUpdateObjectImpl(), ObjectBase.raise\_OnUpdating(object, LinkEventArgs), ObjectBase.raise\_OnUpdate(object, LinkEventArgs), ObjectBase.raise\_OnDestroying(object, LinkEventArgs), ObjectBase.raise\_OnDestroy(object, LinkEventArgs), ObjectBase.raise\_Destroying(object, Identifier), ObjectBase.raise\_OnAdded(object, AddToDocEventArgs), ObjectBase.raise\_OnRemoved(object, RemoveFromDocEventArgs), ObjectBase.raise\_OnContentsUpdated(object, EventArgs), ObjectBase.Dispose(bool), ObjectBase.SkipModified, ObjectBase.ClearChildInfoBeforeDeserialize, ObjectBase.KeyImpl, ObjectBase.ID, ObjectBase.TopologyEntityTypeName, ObjectBase.ObjectStateForCircularError, ObjectBase.ObjectState, ObjectBase.IsChildExternable, ObjectBase.IsExternable, ObjectBase.Container, ObjectBase.Owner, ObjectBase.Document, ObjectBase.UntypedEventCore, ObjectBase.KernelKey, ObjectBase.Key, ObjectBase.OnContentsUpdated, ObjectBase.OnRemoved, ObjectBase.OnAdded, ObjectBase.Destroying, ObjectBase.OnDestroy, ObjectBase.OnDestroying, ObjectBase.OnUpdate, ObjectBase.OnUpdating, [LinkableBase.OnDeserialization(object)](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/Pre/Data/VM.Models.Pre/Models/LinkableBase.cs), ObservableObject.Dispose(), ObservableObject.RaisePropertyChanged(string), ObservableObject.RaisePropertyChanged(string, object, object), ObservableObject.Dispose(bool), ObservableObject.DisposeManagedResources(), ObservableObject.DisposeUnmanagedResources(), ObservableObject.IsDisposed, ObservableObject.TryDisposing, ObservableObject.Disposed, ObservableObject.Disposing, ObservableObject.PropertyChanged

#### Extension Methods

[LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### <a id="VM_Managed_EntityBase__ctor"></a> EntityBase()

Initializes a new instance of the  class.

```csharp
protected EntityBase()

```

### <a id="VM_Managed_EntityBase__ctor_System_String_"></a> EntityBase(string)

Initializes a new instance of the  class.

```csharp
protected EntityBase(string strName)

```

#### Parameters

`strName` string

Name of the entity base.

## Properties

### <a id="VM_Managed_EntityBase_Comment"></a> Comment

Gets or sets the comment.

```csharp
public string Comment { get; set; }

```

#### Property Value

string

### <a id="VM_Managed_EntityBase_DisplayName"></a> DisplayName

The display name.

```csharp
public virtual string DisplayName { get; }

```

#### Property Value

string

### <a id="VM_Managed_EntityBase_FullName"></a> FullName

Gets the full name.

```csharp
public string FullName { get; }

```

#### Property Value

string

### <a id="VM_Managed_EntityBase_HasLayerExplicitly"></a> HasLayerExplicitly

Gets a value indicating whether object has a layer explicitly.

```csharp
protected abstract bool HasLayerExplicitly { get; }

```

#### Property Value

bool

### <a id="VM_Managed_EntityBase_IsEnabled"></a> IsEnabled

Gets or sets a value indicating whether this  is enabled.

```csharp
public virtual bool IsEnabled { get; set; }

```

#### Property Value

bool

### <a id="VM_Managed_EntityBase_IsFileProperty"></a> IsFileProperty

Gets a value indicating whether this instance is file property.

```csharp
protected bool IsFileProperty { get; }

```

#### Property Value

bool

### <a id="VM_Managed_EntityBase_IsVisible"></a> IsVisible

Gets or sets the visible state.

```csharp
public virtual bool IsVisible { get; set; }

```

#### Property Value

bool

### <a id="VM_Managed_EntityBase_Layer"></a> Layer

Gets or sets the layer.

```csharp
public virtual Layer Layer { get; set; }

```

#### Property Value

Layer

### <a id="VM_Managed_EntityBase_Name"></a> Name

Gets or sets the name.

```csharp
public string Name { get; set; }

```

#### Property Value

string

### <a id="VM_Managed_EntityBase_NonSymmetricName"></a> NonSymmetricName

Gets the name of the non symmetric.

```csharp
public string NonSymmetricName { get; }

```

#### Property Value

string

### <a id="VM_Managed_EntityBase_UntypedProperty"></a> UntypedProperty

Gets or sets the untyped property.

```csharp
public Property UntypedProperty { get; set; }

```

#### Property Value

[Property](VM.Managed.Property.md)

## Methods

### <a id="VM_Managed_EntityBase_FindLocal_System_String_"></a> FindLocal(string)

Finds an object that matches a specified name in local.

```csharp
public override IObjectBase FindLocal(string strName)

```

#### Parameters

`strName` string

Name to search for.

#### Returns

IObjectBase

An object that matches a specified name.

### <a id="VM_Managed_EntityBase_FixUp_VM_Managed_ObjectBase_"></a> FixUp(ObjectBase)

Before destroy the old object, perform a work.

```csharp
public override bool FixUp(ObjectBase ob)

```

#### Parameters

`ob` ObjectBase

The old object.

#### Returns

bool

`true` if success; otherwise, `false`.

### <a id="VM_Managed_EntityBase_GetModelNavigatorInformationImpl_System_Xml_XmlDocument_System_Xml_XmlElement_System_Boolean_"></a> GetModelNavigatorInformationImpl(XmlDocument, XmlElement, bool)

Gets the object information for model navigator \[implementation\].

```csharp
protected virtual bool GetModelNavigatorInformationImpl(XmlDocument xmlDom, XmlElement xmlEle, bool bHasChild)

```

#### Parameters

`xmlDom` XmlDocument

The XmlDocument for object.

`xmlEle` XmlElement

The XmlElement for object.

`bHasChild` bool

if set to `true` \[b has child\].

#### Returns

bool

`true` if success; otherwise, `false`.

### <a id="VM_Managed_EntityBase_Initialize_VM_Unit_ConvertFactor_"></a> Initialize(ConvertFactor)

Initializes member through unit convert factor.

```csharp
public override void Initialize(Unit.ConvertFactor factor)

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### <a id="VM_Managed_EntityBase_LinkAddedToDocument_System_Object_VM_Managed_AddToDocEventArgs_"></a> LinkAddedToDocument(object, AddToDocEventArgs)

Add linked object to a document.

```csharp
protected override void LinkAddedToDocument(object objNotifier, AddToDocEventArgs arg)

```

#### Parameters

`objNotifier` object

The linked object.

`arg` AddToDocEventArgs

The  instance containing the event data.

### <a id="VM_Managed_EntityBase_LinkRequestDestroying_System_Object_VM_Managed_LinkEventArgs_"></a> LinkRequestDestroying(object, LinkEventArgs)

Request for destroying the linked object.

```csharp
protected override void LinkRequestDestroying(object objNotifier, LinkEventArgs arg)

```

#### Parameters

`objNotifier` object

The linked object.

`arg` LinkEventArgs

The  instance containing the event data.

### <a id="VM_Managed_EntityBase_OnDeserialization_System_Object_"></a> OnDeserialization(object)

Called when \[deserialization\].

```csharp
protected override void OnDeserialization(object sender)

```

#### Parameters

`sender` object

The sender.

### <a id="VM_Managed_EntityBase_OnDeserializationForAttribute"></a> OnDeserializationForAttribute()

Called when \[deserialization for attribute\].

```csharp
public virtual void OnDeserializationForAttribute()

```

### <a id="VM_Managed_EntityBase_OnUpdatePropertyImpl_VM_Managed_Property_VM_Managed_LinkEventArgs_"></a> OnUpdatePropertyImpl(Property, LinkEventArgs)

Called when \[update property\].

```csharp
protected virtual void OnUpdatePropertyImpl(Property prop, LinkEventArgs arg)

```

#### Parameters

`prop` [Property](VM.Managed.Property.md)

The property.

`arg` LinkEventArgs

The  instance containing the event data.

### <a id="VM_Managed_EntityBase_PropertyRequestUpdate_System_Object_VM_Managed_LinkEventArgs_"></a> PropertyRequestUpdate(object, LinkEventArgs)

Request for update the property.

```csharp
public void PropertyRequestUpdate(object obj, LinkEventArgs arg)

```

#### Parameters

`obj` object

The linked object.

`arg` LinkEventArgs

The  instance containing the event data.

### <a id="VM_Managed_EntityBase_ReadTemplateImpl_System_Xml_XmlReader_"></a> ReadTemplateImpl(XmlReader)

Reads the template document \[implementation\].

```csharp
protected virtual void ReadTemplateImpl(XmlReader reader)

```

#### Parameters

`reader` XmlReader

The reader.

### <a id="VM_Managed_EntityBase_SetOldNameWithNewEntity_VM_Managed_ObjectBase_VM_Managed_ObjectBase_"></a> SetOldNameWithNewEntity(ObjectBase, ObjectBase)

Change for the new name.

```csharp
public override sealed void SetOldNameWithNewEntity(ObjectBase obNew, ObjectBase obOld)

```

#### Parameters

`obNew` ObjectBase

The new object.

`obOld` ObjectBase

The old object.

### <a id="VM_Managed_EntityBase_WriteTemplateImpl_System_Xml_XmlWriter_"></a> WriteTemplateImpl(XmlWriter)

Writes the template document \[implementation\].

```csharp
protected virtual void WriteTemplateImpl(XmlWriter writer)

```

#### Parameters

`writer` XmlWriter

The writer.