# PlacementTarget Constructors

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.runtime.placement.placementtarget/)

## PlacementTarget(GrainId, Dictionary&lt;string, object&gt;, GrainInterfaceType, ushort) {#constructor-orleans-runtime-grainid-system-collections-generic-dictionary-string-2dda0fd5}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.runtime.placement.placementtarget/constructors/constructor-orleans-runtime-grainid-system-collections-generic-dictionary-string-2dda0fd5/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core/Placement/PlacementTarget.cs#L19-L23)

```csharp
public PlacementTarget(GrainId grainIdentity, Dictionary<string, object> requestContextData, GrainInterfaceType interfaceType, ushort interfaceVersion)
```

Initializes a new instance of the [PlacementTarget](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.runtime.placement.placementtarget/) struct.

### Parameters

- `grainIdentity` (`GrainId`): The grain being targeted.
- `requestContextData` (`Dictionary<string, object>`): The [RequestContext](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.requestcontext/) dictionary for the request which triggered placement.
- `interfaceType` (`GrainInterfaceType`): The interface being requested.
- `interfaceVersion` (`ushort`): The interface version being requested.
