NServiceBus Сообщения и Инкапсуляция - PullRequest
1 голос
/ 16 октября 2011

Надеюсь, это не идиотский вопрос ... В моем мозгу столько нового, что болит.

Я пытаюсь лучше узнать NServiceBus.

Мои классы сообщений выглядят так:

public class Address // value object
    {
        public readonly string AddressLine1;
        public readonly string AddressLine2;
        public readonly string AddressLine3;
        public readonly string City;
        public readonly string Country;
        public readonly string PostCode;

        public Address(string addressLine1,
                       string addressLine2,
                       string addressLine3,
                       string city,
                       string country,
                       string postCode)
        {
            AddressLine1 = addressLine1;
            AddressLine2 = addressLine2;
            AddressLine3 = addressLine3;
            City = city;
            Country = country;
            PostCode = postCode;
        }
    }

Проблема в том, что сериализатор NServiceBus не может справиться с этим (по понятным причинам), и мне приходится возвращаться к автоматическим свойствам. Я могу жить с этим для этого учебного упражнения ... но есть ли способ использовать класс сообщения выше?

Я решил спросить, а не углубляться в исходный код NServiceBus. Спасибо!

Ответы [ 2 ]

2 голосов
/ 16 октября 2011

Я некоторое время не использовал NSB, но я помню, что существовал модуль contrib , который содержит JsonSerializer на основе Newtonsoft Json.NET ,

Библиотека json.net поддерживает (де) сериализацию объектов, подобных описанному вами.Вы можете найти более подробную информацию о том, что поддерживается библиотеками сериализации здесь .

1 голос
/ 17 октября 2011

Я почти уверен, что это сработает, если вы выставите свойства get / private set вместо полей.

...