此页面有用吗?
您对此内容的反馈非常重要。 请告诉我们您的想法。
更多反馈?
1500 个剩余字符
导出 (0) 打印
全部展开

BrokeredMessage.ViaPartitionKey 属性

注:本页面内容可能不完全适用中国大陆地区运营的 Windows Azure服务。如要了解不同地区 Windows Azure 服务的差异, 请参考本网站.

将使用事务通过传输���列发送消息时,获取或设置分区键值。

命名空间:  Microsoft.ServiceBus.Messaging
程序集:  Microsoft.ServiceBus(在 Microsoft.ServiceBus.dll 中)

public string ViaPartitionKey { get; set; }

属性值

类型:System.String
将使用事务通过传输队列来发送消息时的分区键值。

服务总线 支持通过分区传输队列向分区队列或主题发送消息。在这种情况下,将消息的常规分区键(SessionIdPartitionKeyMessageId)用于目标队列或主题。如果对传输队列进行了分区,并且设置了 ViaPartitionKey 属性,则 ViaPartitionKey 值用作传输队列的分区键。如果未设置 ViaPartitionKey 属性,则 服务总线 使用内部算法将消息分配给传输队列的片段。

如果使用事务通过传输队列发送消息,则必须对这些消息设置 ViaPartitionKey 属性。如果使用单个事务通过相同传输队列发送多个消息,则必须将所有消息的 ViaPartitionKey 属性设置为相同的值。

MessageSender viaMessageSender = messagingfactory.CreateMessageSender(transferDestinationEntityPath: targetQueue.Path, viaEntityPath: transferQueue.Path);
CommittableTransaction committableTransaction = new CommittableTransaction();
using (TransactionScope ts = new TransactionScope(committableTransaction))
{
    BrokeredMessage msg = new BrokeredMessage("This is a message");
    msg.ViaPartitionKey = "myPartitionKey"; // Used as a partition key for transfer queue.
    msg.SessionId = "mySessionId"; // Used as a partition key for destination queue.
    viaMessageServer.Send(msg); 
    ts.Complete();
}
committableTransaction.Commit();

社区附加资源

添加
显示:
© 2015 Microsoft