> ## Documentation Index
> Fetch the complete documentation index at: https://easyaf.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# EdmEntityType

> Represents an entity type in an OData model.

export function DocsBadge({text, variant = 'neutral'}) {
  const variantClasses = {
    success: 'mint-bg-green-500/10 mint-text-green-600 dark:mint-text-green-400 mint-border-green-500/20',
    neutral: 'mint-bg-slate-500/10 mint-text-slate-600 dark:mint-text-slate-400 mint-border-slate-500/20',
    info: 'mint-bg-blue-500/10 mint-text-blue-600 dark:mint-text-blue-400 mint-border-blue-500/20',
    warning: 'mint-bg-amber-500/10 mint-text-amber-600 dark:mint-text-amber-400 mint-border-amber-500/20',
    danger: 'mint-bg-red-500/10 mint-text-red-600 dark:mint-text-red-400 mint-border-red-500/20'
  };
  const classes = variantClasses[variant] || variantClasses.neutral;
  return <span className={`mint-inline-flex mint-items-center mint-px-2 mint-py-0.5 mint-rounded-full mint-text-xs mint-font-medium mint-tracking-wide mint-border mint-ml-1.5 mint-align-middle mint-whitespace-nowrap ${classes}`}>
      {text}
    </span>;
}

## Definition

**Assembly:** Microsoft.OData.Mcp.Core.dll

**Namespace:** Microsoft.OData.Mcp.Core.Models

**Inheritance:** System.Object

## Syntax

```csharp theme={"dark"}
Microsoft.OData.Mcp.Core.Models.EdmEntityType
```

## Summary

Represents an entity type in an OData model.

## Remarks

Entity types define the structure of entities in an OData service, including their
properties, navigation properties, and key definitions. They form the foundation
of the entity data model and determine how data is structured and accessed.

## Constructors

### <Icon icon="hammer" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  .ctor

Initializes a new instance of the [EdmEntityType](/odata-mcp/api-reference/Microsoft/OData/Mcp/Core/Models/EdmEntityType) class.

#### Syntax

```csharp theme={"dark"}
public EdmEntityType()
```

### <Icon icon="hammer" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  .ctor

Initializes a new instance of the [EdmEntityType](/odata-mcp/api-reference/Microsoft/OData/Mcp/Core/Models/EdmEntityType) class with the specified name and namespace.

#### Syntax

```csharp theme={"dark"}
public EdmEntityType(string name, string namespace)
```

#### Parameters

| Name        | Type     | Description                       |
| ----------- | -------- | --------------------------------- |
| `name`      | `string` | The name of the entity type.      |
| `namespace` | `string` | The namespace of the entity type. |

#### Exceptions

| Exception           | Description                                              |
| ------------------- | -------------------------------------------------------- |
| `ArgumentException` | Thrown when *name* or *namespace* is null or whitespace. |

### <Icon icon="hammer" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  .ctor <DocsBadge text="Inherited" variant="neutral" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public Object()
```

## Properties

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Abstract

Gets or sets a value indicating whether this entity type is abstract.

#### Syntax

```csharp theme={"dark"}
public bool Abstract { get; set; }
```

#### Property Value

Type: `bool`
`true` if the entity type is abstract; otherwise, `false`.

#### Remarks

Abstract entity types cannot be instantiated directly but can serve as base types
for other entity types. They are useful for defining common properties and behaviors.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  BaseType

Gets or sets the base type of the entity type.

#### Syntax

```csharp theme={"dark"}
public string BaseType { get; set; }
```

#### Property Value

Type: `string?`
The fully qualified name of the base entity type, or `null` if this type has no base type.

#### Remarks

When specified, this entity type inherits all properties and navigation properties
from the base type. The inheritance hierarchy must be consistent within the model.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  FullName

Gets the fully qualified name of the entity type.

#### Syntax

```csharp theme={"dark"}
public string FullName { get; }
```

#### Property Value

Type: `string`
The namespace and name combined with a dot separator.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  HasBaseType

Gets a value indicating whether this entity type inherits from another entity type.

#### Syntax

```csharp theme={"dark"}
public bool HasBaseType { get; }
```

#### Property Value

Type: `bool`
`true` if the entity type has a base type; otherwise, `false`.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  HasNavigationProperties

Gets a value indicating whether this entity type has any navigation properties.

#### Syntax

```csharp theme={"dark"}
public bool HasNavigationProperties { get; }
```

#### Property Value

Type: `bool`
`true` if the entity type has navigation properties; otherwise, `false`.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  HasStream

Gets or sets a value indicating whether this entity type has a stream.

#### Syntax

```csharp theme={"dark"}
public bool HasStream { get; set; }
```

#### Property Value

Type: `bool`
`true` if the entity type has a stream; otherwise, `false`.

#### Remarks

When true, instances of this entity type can have an associated media resource
(such as a photo or document) that can be accessed via streaming operations.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  IsAbstract

Gets a value indicating whether this entity type is abstract.

#### Syntax

```csharp theme={"dark"}
public bool IsAbstract { get; }
```

#### Property Value

Type: `bool`
`true` if the entity type is abstract; otherwise, `false`.

#### Remarks

This is an alias for the [EdmEntityType.Abstract](/odata-mcp/api-reference/Microsoft/OData/Mcp/Core/Models/EdmEntityType#abstract) property for compatibility.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Key

Gets or sets the key properties of the entity type.

#### Syntax

```csharp theme={"dark"}
public System.Collections.Generic.List<string> Key { get; set; }
```

#### Property Value

Type: `System.Collections.Generic.List<string>`
A collection of property names that form the entity key.

#### Remarks

Key properties uniquely identify instances of the entity type. They are used
for addressing individual entities and establishing relationships.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  KeyProperties

Gets the key properties as [EdmProperty](/odata-mcp/api-reference/Microsoft/OData/Mcp/Core/Models/EdmProperty) objects.

#### Syntax

```csharp theme={"dark"}
public System.Collections.Generic.IEnumerable<Microsoft.OData.Mcp.Core.Models.EdmProperty> KeyProperties { get; }
```

#### Property Value

Type: `System.Collections.Generic.IEnumerable<Microsoft.OData.Mcp.Core.Models.EdmProperty>`
A collection of properties that form the entity key.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Name

Gets or sets the name of the entity type.

#### Syntax

```csharp theme={"dark"}
public required string Name { get; set; }
```

#### Property Value

Type: `string`
The local name of the entity type within its namespace.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Namespace

Gets or sets the namespace of the entity type.

#### Syntax

```csharp theme={"dark"}
public required string Namespace { get; set; }
```

#### Property Value

Type: `string`
The namespace that contains this entity type.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  NavigationProperties

Gets or sets the navigation properties of the entity type.

#### Syntax

```csharp theme={"dark"}
public System.Collections.Generic.List<Microsoft.OData.Mcp.Core.Models.EdmNavigationProperty> NavigationProperties { get; set; }
```

#### Property Value

Type: `System.Collections.Generic.List<Microsoft.OData.Mcp.Core.Models.EdmNavigationProperty>`
A collection of navigation properties that define relationships to other entities.

#### Remarks

Navigation properties enable traversal between related entities and define the
relationship structure of the data model.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  NonKeyProperties

Gets the non-key properties of the entity type.

#### Syntax

```csharp theme={"dark"}
public System.Collections.Generic.IEnumerable<Microsoft.OData.Mcp.Core.Models.EdmProperty> NonKeyProperties { get; }
```

#### Property Value

Type: `System.Collections.Generic.IEnumerable<Microsoft.OData.Mcp.Core.Models.EdmProperty>`
A collection of properties that are not part of the entity key.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  OpenType

Gets or sets a value indicating whether this entity type is open.

#### Syntax

```csharp theme={"dark"}
public bool OpenType { get; set; }
```

#### Property Value

Type: `bool`
`true` if the entity type is open; otherwise, `false`.

#### Remarks

Open entity types allow additional properties beyond those explicitly defined
in the metadata. This provides flexibility for dynamic scenarios where the
complete structure may not be known at design time.

### <Icon icon="tag" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Properties

Gets or sets the properties of the entity type.

#### Syntax

```csharp theme={"dark"}
public System.Collections.Generic.List<Microsoft.OData.Mcp.Core.Models.EdmProperty> Properties { get; set; }
```

#### Property Value

Type: `System.Collections.Generic.List<Microsoft.OData.Mcp.Core.Models.EdmProperty>`
A collection of structural properties that define the data elements of the entity.

#### Remarks

These properties represent the data that can be stored and retrieved for instances
of this entity type. They include both key and non-key properties.

## Methods

### <Icon icon="code-merge" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Equals <DocsBadge text="Override" variant="info" />

Determines whether the specified object is equal to the current entity type.

#### Syntax

```csharp theme={"dark"}
public override bool Equals(object obj)
```

#### Parameters

| Name  | Type      | Description                                         |
| ----- | --------- | --------------------------------------------------- |
| `obj` | `object?` | The object to compare with the current entity type. |

#### Returns

Type: `bool`
`true` if the specified object is equal to the current entity type; otherwise, `false`.

### <Icon icon="code-fork" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Equals <DocsBadge text="Inherited" variant="neutral" /> <DocsBadge text="Virtual" variant="warning" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public virtual bool Equals(object obj)
```

#### Parameters

| Name  | Type      | Description |
| ----- | --------- | ----------- |
| `obj` | `object?` | -           |

#### Returns

Type: `bool`

### <Icon icon="thumbtack" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  Equals <DocsBadge text="Inherited" variant="neutral" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public static bool Equals(object objA, object objB)
```

#### Parameters

| Name   | Type      | Description |
| ------ | --------- | ----------- |
| `objA` | `object?` | -           |
| `objB` | `object?` | -           |

#### Returns

Type: `bool`

### <Icon icon="code-merge" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  GetHashCode <DocsBadge text="Override" variant="info" />

Returns a hash code for the current entity type.

#### Syntax

```csharp theme={"dark"}
public override int GetHashCode()
```

#### Returns

Type: `int`
A hash code for the current entity type.

### <Icon icon="code-fork" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  GetHashCode <DocsBadge text="Inherited" variant="neutral" /> <DocsBadge text="Virtual" variant="warning" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public virtual int GetHashCode()
```

#### Returns

Type: `int`

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  GetNavigationProperty

Gets a navigation property by name.

#### Syntax

```csharp theme={"dark"}
public Microsoft.OData.Mcp.Core.Models.EdmNavigationProperty GetNavigationProperty(string propertyName)
```

#### Parameters

| Name           | Type     | Description                                      |
| -------------- | -------- | ------------------------------------------------ |
| `propertyName` | `string` | The name of the navigation property to retrieve. |

#### Returns

Type: `Microsoft.OData.Mcp.Core.Models.EdmNavigationProperty?`
The navigation property with the specified name, or `null` if not found.

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  GetProperty

Gets a property by name.

#### Syntax

```csharp theme={"dark"}
public Microsoft.OData.Mcp.Core.Models.EdmProperty GetProperty(string propertyName)
```

#### Parameters

| Name           | Type     | Description                           |
| -------------- | -------- | ------------------------------------- |
| `propertyName` | `string` | The name of the property to retrieve. |

#### Returns

Type: `Microsoft.OData.Mcp.Core.Models.EdmProperty?`
The property with the specified name, or `null` if not found.

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  GetType <DocsBadge text="Inherited" variant="neutral" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public System.Type GetType()
```

#### Returns

Type: `System.Type`

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  HasNavigationProperty

Determines whether the entity type has a navigation property with the specified name.

#### Syntax

```csharp theme={"dark"}
public bool HasNavigationProperty(string propertyName)
```

#### Parameters

| Name           | Type     | Description                                   |
| -------------- | -------- | --------------------------------------------- |
| `propertyName` | `string` | The name of the navigation property to check. |

#### Returns

Type: `bool`
`true` if the entity type has the navigation property; otherwise, `false`.

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  HasProperty

Determines whether the entity type has a property with the specified name.

#### Syntax

```csharp theme={"dark"}
public bool HasProperty(string propertyName)
```

#### Parameters

| Name           | Type     | Description                        |
| -------------- | -------- | ---------------------------------- |
| `propertyName` | `string` | The name of the property to check. |

#### Returns

Type: `bool`
`true` if the entity type has the property; otherwise, `false`.

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  MemberwiseClone <DocsBadge text="Inherited" variant="neutral" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
protected internal object MemberwiseClone()
```

#### Returns

Type: `object`

### <Icon icon="thumbtack" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  ReferenceEquals <DocsBadge text="Inherited" variant="neutral" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public static bool ReferenceEquals(object objA, object objB)
```

#### Parameters

| Name   | Type      | Description |
| ------ | --------- | ----------- |
| `objA` | `object?` | -           |
| `objB` | `object?` | -           |

#### Returns

Type: `bool`

### <Icon icon="code-merge" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  ToString <DocsBadge text="Override" variant="info" />

Returns a string representation of the entity type.

#### Syntax

```csharp theme={"dark"}
public override string ToString()
```

#### Returns

Type: `string`
The fully qualified name of the entity type.

### <Icon icon="code-fork" iconType="duotone" color="#419AC5" size={24} style={{ paddingRight: '8px' }} />  ToString <DocsBadge text="Inherited" variant="neutral" /> <DocsBadge text="Virtual" variant="warning" />

<Note>Inherited from `object`</Note>

#### Syntax

```csharp theme={"dark"}
public virtual string ToString()
```

#### Returns

Type: `string?`
