# GetComponent<T>(Entity)

> Look up the value of a component for an entity.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Entities](/engine/7000.0/script-reference/unity/entities.md)
* **Assembly:** UnityEngine.EntitiesModule

> **Warning:**
>
> **Deprecated.** Use SystemAPI.GetComponent instead (RemovedAfter Entities 1.0)

```csharp
protected T GetComponent<T>(Entity entity) where T : unmanaged, IComponentData
```

### Parameters

**** (\[Entity]\(/engine/7000.0/script-reference/unity/entities/entity)): The entity.

### Returns

| Type | Description                                        |
| ---- | -------------------------------------------------- |
| T    | A struct of type T containing the component value. |

### Remarks

Use this method to look up data in another entity using its [Entity](/engine/7000.0/script-reference/unity/entities/entity.md) object. For example, if you have a component that contains an Entity field, you can look up the component data for the referenced entity using this method.

When iterating over entities coming from a query, do not use this method to access data of the current entity in the set. This function is much slower than accessing the data directly.

When you call this method on the main thread, it invokes [EntityManager.GetComponentData](/engine/7000.0/script-reference/unity/entities/entitymanager/getcomponentdata.md).

This lookup method results in a slower, indirect memory access. When possible, organize your data to minimize the need for indirect lookups.
