Возможный дубликат:
Передача объектных сообщений в Azure Хранилище очередей
Я работаю над вариантом использования, который требует, чтобы мои сообщения очереди имели несколько больше свойств, чем те, которые предоставляются сообщениями очереди Windows Azure (класс CloudQueueMessage). Я не могу использовать большинство свойств в CloudQueueMessage, так как они в основном защищены.
Поэтому я подумал о том, чтобы наследовать CloudQueueMessage и добавить свои дополнительные свойства в производный класс. Мой производный класс выглядит следующим образом:
public class AzureQueueMessage : CloudQueueMessage
{
public AzureQueueMessage(string content): base(content)
{
}
//My new property
public string Label { get; set; }
}
Остальная часть моего кода вставки и извлечения сообщения выглядит следующим образом:
AzureQueueMessage message = new AzureQueueMessage("testing");
cloudQueue.AddMessage(message);
CloudQueueMessage qmessage = cloudQueue.GetMessage();
AzureQueueMessage azureMessage = qmessage as AzureQueueMessage;
Здесь cloudQueue — мой экземпляр Azure Queue.
Сообщение вставляется нормально, но azureMessage всегда имеет значение null при приведении к моему производному классу.
Я нашел решение в аналогичных строках здесь, но я еще чтобы попробовать это.
Это нормальное поведение или я что-то упускаю?