SqlFilter w Azure ServiceBus Subskrypcja tematu nie filtruje

Mam aplikację WinRT, której używam Windows Azure Toolkit dla Windows 8 z. Mam konfigurację, w której chciałbym, aby klienci subskrybowali wiadomości ignorowane w temacie ServiceBus, jeśli są twórcami lub jeśli wiadomość jest starsza niż w momencie rozpoczęcia subskrypcji.

We właściwościach mojej wiadomości BrokeredMessage dodałem 2 elementy, aby uwzględnić te scenariusze:

message.Properties["Timestamp"] = DateTime.UtcNow.ToFileTime();
message.Properties["OriginatorId"] = clientId.ToString();

clientId to Guid.

Strona subskrybenta wygląda tak:

// ti is a class that contains a Topic, Subscription and a bool as a cancel flag.

string FilterName = "NotMineNewOnly";

// Find or create the topic.
if (await Topic.ExistsAsync(DocumentId.ToString(), TokenProvider))
{
    ti.Topic = await Topic.GetAsync(DocumentId.ToString(), TokenProvider);
}
else
{
    ti.Topic = await Topic.CreateAsync(DocumentId.ToString(), TokenProvider);
}

// Find or create this client's subscription to the board.
if (await ti.Topic.Subscriptions.ExistsAsync(ClientSettings.Id.ToString()))
{
    ti.Subscription = await ti.Topic.Subscriptions.GetAsync(ClientSettings.Id.ToString());
}
else
{
    ti.Subscription = await ti.Topic.Subscriptions.AddAsync(ClientSettings.Id.ToString());
}

// Find or create the subscription filter.
if (!await ti.Subscription.Rules.ExistsAsync(FilterName))
{
    // Want to ignore messages generated by this client and ignore any that are older than Timestamp.
    await ti.Subscription.Rules.AddAsync(FilterName, sqlFilterExpression: string.Format("(OriginatorId != '{0}') AND (Timestamp > {1})", ClientSettings.Id, DateTime.UtcNow.ToFileTime()));
}

ti.CancelFlag = false;

Topics[boardId] = ti;

while (!ti.CancelFlag)
{
    BrokeredMessage message = await ti.Subscription.ReceiveAndDeleteAsync(TimeSpan.FromSeconds(30));

    if (!ti.CancelFlag && message != null)
    {
        // Everything gets here!  :(
    }

Odbieram wszystko - więc nie wiem, co robię źle. Jak najłatwiej rozwiązać problemy z filtrami subskrypcji?

questionAnswers(2)

yourAnswerToTheQuestion