Этот вопрос основан на более раннем вопросе (хотя и не по теме) Я задал вчера .Сначала прочтите его.
ОК - в моем проекте WCF REST я преобразовывал свои доменные объекты в объекты передачи данных (DTO) до сериализации JSON для мобильных клиентов.Например, вот мой пользовательский DTO:
[DataContract]
public class UserDto
{
[DataMember]
public string UserId { get; set; }
[DataMember]
public string UserName { get; set; }
[DataMember]
public string Email { get; set; }
[DataMember]
public string Password { get; set; }
}
И в моем сервисе User.svc UserDto получает сериализацию обратно к клиенту следующим образом:
public UserDto GetUserById(string userid)
{
var obj = UserRepository.GetUserById(userid);
return new Contracts.UserDto
{
Email = obj.Email.ToString(),
Password = obj.Password.ToString(),
UserId = obj.UserId.ToString(),
UserName = obj.UserName.ToString()
};
}
Теперь у меня естьбазовый класс, который предоставляет следующий метод:
public virtual Stream GetGroupById(string id)
моей службе Dashboard.svc.Он возвращает следующее:
return new MemoryStream(bytes);
В этом сервисе я хочу переопределить метод и вернуть результаты клиенту так же, как я сериализую свой вышеупомянутый UserDto.
МОЙ ВОПРОС IS - как преобразовать метод типа Stream в объект передачи данных и сериализовать результаты (в виде строки в формате JSON) клиенту ???
Спасибо за вашу помощь.