# ProducerRegistered Constructors

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.producerregistered/)

## ProducerRegistered(string, StreamId, GrainId, SiloAddress?) {#constructor-string-orleans-runtime-streamid-orleans-runtime-grainid-orleans-runt-a4af0f5e}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.producerregistered/constructors/constructor-string-orleans-runtime-streamid-orleans-runtime-grainid-orleans-runt-a4af0f5e/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Streaming/Diagnostics/StreamingEvents.cs#L290-L300)

```csharp
public ProducerRegistered(string streamProvider, StreamId streamId, GrainId producerGrainId, SiloAddress? siloAddress)
```

Event payload for when a producer is durably registered in pubsub state for a stream.

### Parameters

- `streamProvider` (`string`): The name of the stream provider.
- `streamId` (`StreamId`): The stream ID.
- `producerGrainId` (`GrainId`): The producer grain ID.
- `siloAddress` (`SiloAddress?`): The address of the silo handling this registration.
