Сериализация объекта и десериализация его в другой объект - WCF - PullRequest
0 голосов
/ 24 марта 2020

В моей системе я пытаюсь предоставить клиенту минимальное определение класса данного модуля (поскольку клиент не должен знать о полной реализации этого модуля). На стороне сервиса эквивалентный класс будет иметь дополнительные / разные методы и свойства (которые будут известны только из сервиса).

Теперь я не совсем уверен, каков наилучший способ сделать это в WCF, но я подумал, что мог бы, возможно, сериализовать / десериализовать 2 немного разных объекта назад и вперед. Давайте возьмем в качестве примера эти 2 разных объекта:

// Given to the client
public class SomeClass
{
   public int Value { get; set; }
   public int MinValue { get; set; }
   public int MaxValue { get; set; }
}

// Internal to the service
public class SomeClass
{
   // !!! Note that I might also want the getter and setter to do different things here than in previous class
   public int Value { get; set; }
   public int MinValue { get; set; }
   public int MaxValue { get; set; }

   public void SomeMethod()
   {
      // Do something
      // ...
   }
}

Обратите внимание, что концепция хороша, но любые предложения о том, как это сделать, будут приветствоваться.

...