# ImplicitChannelSubscriptionAttribute Constructors

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.broadcastchannel/orleans.implicitchannelsubscriptionattribute/)

## ImplicitChannelSubscriptionAttribute {#constructor-48e7d183}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.broadcastchannel/orleans.implicitchannelsubscriptionattribute/constructors/constructor-48e7d183/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.BroadcastChannel/SubscriberTable/Predicates/ImplicitChannelSubscriptionAttribute.cs#L31-L34)

```csharp
public ImplicitChannelSubscriptionAttribute()
```

Used to subscribe to all stream namespaces.

## ImplicitChannelSubscriptionAttribute(IChannelNamespacePredicate, string) {#constructor-orleans-broadcastchannel-ichannelnamespacepredicate-string-f06b6482}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.broadcastchannel/orleans.implicitchannelsubscriptionattribute/constructors/constructor-orleans-broadcastchannel-ichannelnamespacepredicate-string-f06b6482/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.BroadcastChannel/SubscriberTable/Predicates/ImplicitChannelSubscriptionAttribute.cs#L65-L69)

```csharp
public ImplicitChannelSubscriptionAttribute(IChannelNamespacePredicate predicate, string channelIdMapper = null)
```

Allows to pass an instance of the stream namespace predicate. To be used mainly as an extensibility point via inheriting attributes.

### Parameters

- `predicate` (`IChannelNamespacePredicate`): The stream namespace predicate.
- `channelIdMapper` (`string`): The name of the stream identity mapper.

## ImplicitChannelSubscriptionAttribute(Type, string) {#constructor-system-type-string-bff9e6e4}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.broadcastchannel/orleans.implicitchannelsubscriptionattribute/constructors/constructor-system-type-string-bff9e6e4/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.BroadcastChannel/SubscriberTable/Predicates/ImplicitChannelSubscriptionAttribute.cs#L53-L57)

```csharp
public ImplicitChannelSubscriptionAttribute(Type predicateType, string channelIdMapper = null)
```

Allows to pass an arbitrary predicate type to filter stream namespaces to subscribe. The predicate type must have a constructor without parameters.

### Parameters

- `predicateType` (`Type`): The stream namespace predicate type.
- `channelIdMapper` (`string`): The name of the stream identity mapper.

## ImplicitChannelSubscriptionAttribute(string, string) {#constructor-string-string-fb16534f}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.broadcastchannel/orleans.implicitchannelsubscriptionattribute/constructors/constructor-string-string-fb16534f/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.BroadcastChannel/SubscriberTable/Predicates/ImplicitChannelSubscriptionAttribute.cs#L41-L45)

```csharp
public ImplicitChannelSubscriptionAttribute(string streamNamespace, string channelIdMapper = null)
```

Used to subscribe to the specified stream namespace.

### Parameters

- `streamNamespace` (`string`): The stream namespace to subscribe.
- `channelIdMapper` (`string`): The name of the stream identity mapper.
