---
title: "Interface IEntityFactory"
slug: "sdk--stylelabs.m.sdk.factories.ientityfactory"
abstract: ""
---
# Interface IEntityFactory

Contains functionality to create [IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) instances.

## Namespace: StylelabsStylelabs.MSdkFactories

## Assembly: Stylelabs.M.Sdk.dll

## Syntax

```csharp
public interface IEntityFactory
```

## Methods

### CreateAsync(IEntityDefinition, ICultureLoadOption)

Creates an [IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) instance of the given [IEntityDefinition](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientitydefinition.html).

#### Declaration

```csharp
Task<IEntity> CreateAsync(IEntityDefinition definition, ICultureLoadOption cultureLoadOption = null)
```

#### Parameters

| Type | Name | Description |
| --- | --- | --- |
| [IEntityDefinition](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientitydefinition.html) | definition | The entity definition. |
| [ICultureLoadOption](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.framework.essentials.loadoptions.icultureloadoption.html) | cultureLoadOption | The culture load option. |

#### Returns

| Type | Description |
| --- | --- |
| Task<>[IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) | A new [IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) instance. |

### CreateAsync(string, ICultureLoadOption)

Creates an [IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) instance of the [IEntityDefinition](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientitydefinition.html) corresponding to the `definitionName`.

#### Declaration

```csharp
Task<IEntity> CreateAsync(string definitionName, ICultureLoadOption cultureLoadOption = null)
```

#### Parameters

| Type | Name | Description |
| --- | --- | --- |
| string | definitionName | The entity definition name (case insensitive). |
| [ICultureLoadOption](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.framework.essentials.loadoptions.icultureloadoption.html) | cultureLoadOption | The culture load option. |

#### Returns

| Type | Description |
| --- | --- |
| Task<>[IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) | A new [IEntity](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.base.ientity.html) instance. |
