ServiceStack e retornando um fluxo

Acabei de começar a usar o ServiceStack, que é uma biblioteca incrível.

No entanto, tenho um requisito de negócios em que devemos retornar xml e json em que o xml deve estar em formato específico.

Por exemplo, temos clientes existentes que esperam xml do formato:

<code><service name="service1" type="audio" .../>
</code>

Então, basicamente, um monte de atributos.

Eu sei que o ServiceStack usa conceitos de DTOs e usa o DataContractSerializer que retorna elementos xml em vez de no formulário acima com atributos xml.

Eu ainda quero usar os DTOs para pedidos (passando em application / xml ou application / json no cabeçalho Accept) e então posso criar minhas próprias strings xml ou json e então retorná-las como:

<code>string result = "....xml or json string...";
return new MemoryStream(Encoding.UTF8.GetBytes(result));
</code>

onde a string resultante pode ser uma string xml ou uma string json.

Notei no violinista a resposta Content-Type como text / html.

Com a abordagem que estou usando, estou violando qualquer princípio REST? Haverá problemas com o Content-Type como é atualmente (text / html)?

Se eu usar essa abordagem, ela resolverá os requisitos de negócios.

Editar

Descobri que posso retornar um httpResult como:

<code>return new HttpResult(
         new MemoryStream(Encoding.UTF8.GetBytes(result)), "application/xml");
</code>

que fornece o tipo de conteúdo correto.

Então, este é o caminho certo ou terei problemas se eu seguir esse caminho?

questionAnswers(1)

yourAnswerToTheQuestion