Корреляция на основе содержимого в WF 4 для унаследованного свойства DataMember

Есть ли в Windows Workflow Foundation в .NET 4.0 способ корреляции операций на основе унаследованного члена данных? Например, учитывая следующие классы

    [DataContract]
    [KnownType(typeof(DerivedMessage))]
    public abstract class BaseMessage
    {
        [DataMember(Order = 1)]
        public Guid MessageId { get; set; }
    }

    [DataContract]
    public class DerivedMessage : BaseMessage
    {

        [DataMember(Order = 1)]
        public string AdditionalProperty { get; set; }
    }

Разве нельзя сопоставить использование свойства MessageId с операцией, принимающей экземпляр DerivedMessage?

При попытке использовать такое свойство в диалоговом окне CorrelatesOn Definition действия Receive в VS2010 возникает следующая ошибка:

Не удается найти путь к элементу при создании запроса XPath.

Я делаю что-то не так здесь? Сообщение об ошибке не очень полезно, так как я не вижу причин, по которым он не сможет сгенерировать XPath-запрос к свойству MessageId в DerivedMessage.


person Jimit    schedule 18.02.2011    source источник


Ответы (1)


Пользовательский интерфейс — это просто помощник для создания для вас соответствующего запроса XPath. Вы всегда можете просто ввести его.

person Maurice    schedule 18.02.2011