Как инициализировать локальные поля прокси-класса WCF при десериализации - PullRequest
0 голосов
/ 08 марта 2011

В моем клиенте Silverlight у меня есть частичный класс, созданный путем установки ссылки WCF.Я расширил этот класс, добавив несколько свойств RelayCommand.Мне нужно инициализировать эти свойства, которые я обычно делаю в конструкторе.Однако, кажется, что конструктор не вызывается, что, я считаю, является результатом VTS Однако я также не смог использовать атрибут OnDeserialized.

Что предписаноспособ инициализации данных на стороне клиента класса WCF.

1 Ответ

1 голос
/ 09 марта 2011

Я создал пример проекта, и все работает как положено.Если этот код не помог - опубликуйте свой контракт с данными и код клиента.

namespace SilverlightApplication3.ServiceReference1
{
    public partial class SomeModel
    {
        public string ExtendedProperty { get; set; }

        [OnDeserializing]
        public void OnDeserializingMethod(StreamingContext context)
        {
            this.ExtendedProperty = "Ok";
        }
    }
}

Вызов метода обслуживания:

var proxy = new ServiceReference1.Service1Client();
proxy.DoWorkCompleted += (s,e) => Debug.WriteLine(e.Result.ExtendedProperty); //Ok
proxy.DoWorkAsync();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...