public static Task <DedupeResult> SendWithDedupe(this IMessageSession session, Guid messageId, object message, SendOptions?options = null, string?context = null) { Guard.AgainstEmpty(messageId, nameof(messageId)); Guard.AgainstNull(message, nameof(message)); Guard.AgainstNull(session, nameof(session)); if (options == null) { options = new SendOptions(); } else { ValidateMessageId(options); } return(InnerSendWithDedupe(session, message, messageId, options, context)); }