ServiceBusRuleManager.CreateRuleAsync メソッド

定義

オーバーロード

CreateRuleAsync(CreateRuleOptions, CancellationToken)

現在のサブスクリプションにルールを追加して、トピックからサブスクリプションに到達するメッセージをフィルター処理します。

CreateRuleAsync(String, RuleFilter, CancellationToken)

現在のサブスクリプションにルールを追加して、トピックからサブスクリプションに到達するメッセージをフィルター処理します。

CreateRuleAsync(CreateRuleOptions, CancellationToken)

ソース:
ServiceBusRuleManager.cs
ソース:
ServiceBusRuleManager.cs

現在のサブスクリプションにルールを追加して、トピックからサブスクリプションに到達するメッセージをフィルター処理します。

public virtual System.Threading.Tasks.Task CreateRuleAsync (Azure.Messaging.ServiceBus.Administration.CreateRuleOptions options, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateRuleAsync : Azure.Messaging.ServiceBus.Administration.CreateRuleOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.CreateRuleAsync : Azure.Messaging.ServiceBus.Administration.CreateRuleOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overridable Function CreateRuleAsync (options As CreateRuleOptions, Optional cancellationToken As CancellationToken = Nothing) As Task

パラメーター

options
CreateRuleOptions

追加するルールのオプション。

cancellationToken
CancellationToken

操作を取り消す要求を通知する省略可能 CancellationToken なインスタンス。

戻り値

非同期のルールの追加操作を表すタスク インスタンス。

例外

  • サブスクリプションの下に同じ名前のルールが存在します。 Reasonこの場合、 は にMessagingEntityAlreadyExists設定されます。
  • 操作がタイムアウトしました。 Reason この場合、 は に ServiceTimeout 設定されます。
  • エンティティの指定されたサイズがサポートされていないか、許容される最大クォータに達しました。 サポートされているサイズ値のいずれかを指定するか、既存のエンティティを削除するか、クォータ サイズを増やす必要があります。 この場合、エラーの理由は に QuotaExceeded 設定されます。
  • サーバーがビジーです。 操作を再試行する前に、待機する必要があります。 この場合、エラーの理由は に ServiceBusy 設定されます。
  • 内部エラーまたは予期しない例外が発生します。 この場合、エラーの理由は に GeneralError 設定されます。

注釈

トピックからサブスクリプションに到達するメッセージを決定するルールをサブスクリプションに追加できます。 という名前DefaultRuleNameの既定TrueRuleFilterの規則は、サブスクリプションの作成時に常に追加されます。 異なる名前を持つ複数のルールを同じサブスクリプションに追加できます。 論理 OR 条件を使用して、複数のフィルターが互いに結合されます。 つまり、フィルターが成功した場合、メッセージはサブスクリプションに渡されます。

適用対象

CreateRuleAsync(String, RuleFilter, CancellationToken)

ソース:
ServiceBusRuleManager.cs
ソース:
ServiceBusRuleManager.cs

現在のサブスクリプションにルールを追加して、トピックからサブスクリプションに到達するメッセージをフィルター処理します。

public virtual System.Threading.Tasks.Task CreateRuleAsync (string ruleName, Azure.Messaging.ServiceBus.Administration.RuleFilter filter, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateRuleAsync : string * Azure.Messaging.ServiceBus.Administration.RuleFilter * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.CreateRuleAsync : string * Azure.Messaging.ServiceBus.Administration.RuleFilter * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overridable Function CreateRuleAsync (ruleName As String, filter As RuleFilter, Optional cancellationToken As CancellationToken = Nothing) As Task

パラメーター

ruleName
String

ルールの名前

filter
RuleFilter

メッセージが照合されるフィルター式。

cancellationToken
CancellationToken

操作を取り消す要求を通知する省略可能 CancellationToken なインスタンス。

戻り値

非同期のルールの追加操作を表すタスク インスタンス。

例外

  • サブスクリプションの下に同じ名前のルールが存在します。 Reasonこの場合、 は にMessagingEntityAlreadyExists設定されます。
  • 操作がタイムアウトしました。 Reason この場合、 は に ServiceTimeout 設定されます。
  • エンティティの指定されたサイズがサポートされていないか、許容される最大クォータに達しました。 サポートされているサイズ値のいずれかを指定するか、既存のエンティティを削除するか、クォータ サイズを増やす必要があります。 この場合、エラーの理由は に QuotaExceeded 設定されます。
  • サーバーがビジーです。 操作を再試行する前に、待機する必要があります。 この場合、エラーの理由は に ServiceBusy 設定されます。
  • 内部エラーまたは予期しない例外が発生します。 この場合、エラーの理由は に GeneralError 設定されます。

注釈

トピックからサブスクリプションに到達するメッセージを決定するルールをサブスクリプションに追加できます。 という名前DefaultRuleNameの既定TrueRuleFilterの規則は、サブスクリプションの作成時に常に追加されます。 異なる名前を持つ複数のルールを同じサブスクリプションに追加できます。 論理 OR 条件を使用して、複数のフィルターが互いに結合されます。 つまり、フィルターが成功した場合、メッセージはサブスクリプションに渡されます。

適用対象