Я задал пару вопросов о сериализации словарей, и я понял, что даже не могу использовать Newtonsoft.JSON в своих ответах .ASMX!Как я могу убедиться, что результаты .asmx JSON используют Newtonsoft.JSON?
У меня есть JSON-излучающих класса WebService в .asmx файле:
[WebService(Namespace = "www.???.com")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class ApplicationService : JSONWebServiceBase
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public DateTime GetX()
{
return DateTime.Now;
}
}
Чтобы проверить мой JSON, я вернулся свойство DateTime, и с помощью теста simon_weaver в эту дату появился на клиенте, как
{"\/Date(1355627201572)\/"}
вместо
{"2012-12-15T19:07:03.5247384-08:00"}
, который говорит мне, что сериализатору Microsoft является Бейн g, а не Newtonsoft.JSON. Как сообщить ASP.NET, что я хочу использовать Newtonsoft?
в зависимости от версии, вы должны зарегистрировать Newtonsoft в качестве обработчика сценариев по умолчанию –
Спасибо вам @JonathanBates! Копаем в том, как это сделать ... – n8wrl
Взгляните на это http://msdn.microsoft.com/en-us/library/bb763183(v=vs.100).ASPX –