У меня есть собственный веб-сервис.Я получаю запрос (JSON).Я обрабатываю это и получаю результат как XmlDocument.Теперь мне нужно вернуть ответ (также JSON).Но есть проблема, потому что результатом является структура JSON, но в строковом формате.
[ServiceContract(Name = "MyService", Namespace = "http://tempuri.org/")]
public interface ImyAgent
{
[OperationContract]
[WebInvoke(UriTemplate = "json-post", Method = "*", ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
string ActionJsonPost(string data);
}
namespace MyService
{
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.Single, IncludeExceptionDetailInFaults = true, AddressFilterMode = AddressFilterMode.Any)]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class myAgent : ImyAgent
{
public myAgent() { }
public string ActionJsonPost(string data)
{
XmlDocument xml = new XmlDocument();
xml.LoadXml("<root><question>language</question><date>2019-02-07</date></root>"); //some XML structure, I can't specified, depends on requests
return JsonConvert.SerializeXmlNode(xml);
}
}
}
Итак, XML-результат:
language 2019-02-07
Результат JSON должен быть:
{"root": {"question": "language"," date ":" 2019-02-07 "}}
но, к сожалению, реальный результат:
" {\ "root \": {\ "вопрос \ ": \" language \ ", \" date \ ": \" 2019-02-07 \ "}}"