# IAttributeToFactoryMapper&lt;TMetadata&gt; Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.runtime.iattributetofactorymapper-1/)

## GetFactory(ParameterInfo, TMetadata) {#getfactory-system-reflection-parameterinfo-tmetadata-3b5a0ca9}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.runtime.iattributetofactorymapper-1/methods/getfactory-system-reflection-parameterinfo-tmetadata-3b5a0ca9/)

```csharp
public abstract Factory<IGrainContext, object> GetFactory(ParameterInfo parameter, TMetadata metadata)
```

Responsible for mapping a facet metadata to a cachable factory from the parameter and facet metadata.

### Parameters

- `parameter` (`ParameterInfo`): The parameter info.
- `metadata` (`TMetadata`): The metadata.

### Returns

The factory used to create facet instances for a grain.
