Tag: json

JSON.NET – 选择所有对象

我正在寻找一种方法来使用Json.NET选择JObject中的所有对象。 简而言之,如果我有以下JSON: { “someCar” : { “id” : “3”, “model” : “M7”, “engine” : “FI V8”, }, “name” : “carparkone”, “id” : “1”, “cars” : [ { “id” : “1”, “model” : “s60”, “engine” : “i5”, }, { “id” : “2”, “model” : “m3”, “engine” : “FI V6”, }, { “id” : “3”, “model” : […]

使用json传递关联数组:在控制器中期望哪种类型?

在客户端,我有一个关联数组,我存储“Guid” – “int”对。 我使用json将数组传递给服务器: $.ajax({ url: methodUrl, type: ‘POST’, async: false, data: { values: items }, dataType: ‘json’, success: function (data) { //… } }); 我尝试传递的对象看起来像这样(取自Chrome调试器): items: Object 44f871e0-daee-4e1b-94c3-76d633a87634: 1 698ce237-3e05-4f80-bb0d-de948c39cd96: 1 在控制器中我有一个方法 public ActionResult Method(Dictionary values) { } 但是,属性值保持为null。 只有客户端的Guids列表和控制器中的List一切正常。 我怀疑我应该为控制器中的值选择另一种类型,而不是字典。 我也尝试在ajax请求中添加“traditional:true”,但没有成功。 任何建议表示赞赏!

解析JSON POST请求C#

某些serwer发送POST请求并提供以下信息: { payload: { uid: “900af657a65e”, amount: 50, adjusted_amount: 25 }, signature: “4dd0f5da77ecaf88628967bbd91d9506” } 我是如何在我的ASHX处理程序中成功处理的?

检查JSON和XML是否有效? C#

我正在使用newtonsoft json.net http://json.codeplex.com/ ,我想知道…… 如何validationjson和xml是有效的json / xml。 我该如何validation?

如何以JSON格式传递TimeSpan值?

我用Fiddler测试我的WCF Rest。 我总是得到 HTTP/1.1 400 Bad Request 有这个post值: { “session”:{ “Session”:”088a688d-ea69-4264-9266-381e9e540d00″, “LoginID”:”testid”, “Serial”:”testserial” }, “sub”:[ { “Type”:0, “StartDate”:”\/Date(1319731200000+0800)\/”, “EndDate”:”\/Date(1319731200000+0800)\/”, “Duration”:”12:12:12″ } ] } 我在’持续时间’值中得到错误。 我一直在网上搜索但没有运气。 我希望我能在这里找到答案。 非常感谢!

JSON.NET – 如何为存储在数组/列表中作为对象类型的原始C#类型包括类型名称处理

我正在使用Newtonsoft JSON.NET为我序列化/反序列化。 但我有这个列表,其中它们是Object类型: var list = new List() { “hi there”, 1, 2.33 }; 当我将TypeNameHandling设置为TypeNameHandling.All序列化时,我希望它也会为列表中的每个实例提供$type ,但似乎不是这种情况。 这是实际输出: { “$type”: “System.Collections.Generic.List`1[[System.Object, mscorlib]], mscorlib”, “$values”: [ “hi there”, 1, 2.33 ] } 我需要这个原始类型具有特定的类型名称处理,因为如果我在列表中添加一个Int32值,并在反序列化后返回它,JSON.NET将其设置为Int64 。 这对我来说是一件大事,因为我试图调用一些方法并且这样做我需要比较参数,它们必须具有相同的类型。 有没有可以在JSON.NET中设置的方法或设置来实现我的需求? 我已经看过这篇文章,但它的作用是他试图改变默认行为并且总是返回Int32 ,这不是我正在寻找的。 任何帮助,将不胜感激。 谢谢

如何使用DataContractJsonSerializer反序列化字典?

我有以下型号: [DataContract] public class MessageHeader { private Guid? messageId; public Guid MessageId { get { if (messageId == null) messageId = Guid.NewGuid(); return messageId.Value; } } [DataMember] public string ObjectName { get; set; } [DataMember] public Dictionary Parameters { get; set; } // Can’t deserialize this [DataMember] public Action Action { get; set; } [DataMember] […]

为什么c#JavaScriptSerializer.Serialize返回空方括号

为什么下面的代码返回“[]”时应该返回“{”id“:1999,”title“:”hithere“} JavaScriptSerializer serializer = new JavaScriptSerializer(); StringBuilder sbJsonResults = new StringBuilder(); var result = serializer.Serialize(new dg(1999, “hithere”)); context.Response.Clear(); context.Response.ContentType = “application/json; charset=utf-8”; context.Response.Cache.SetExpires(DateTime.MinValue); context.Response.Write(result); PS dg类看起来像这样: public class dg : ScheduleObserver, ILibrary, IEnumerable { public int id; public string title; private List dList; …many getters and setters and some logic functions… } public abstract class […]

在非转义字符上做什么?

我问了另一个问题,所以我会问别的问题。 根据http://www.c-point.com/javascript_tutorial/special_characters.htm ,有一些转义字符,例如\ n和\ b。 然而/不是其中之一。 在这种情况下会发生什么? ( \/ )是\被忽略了吗? 我在javascript’http ‘http:\/\/www.site.com\/user’有一个字符串。 并不是说这是一个带有’ so with ‘的文字,它看起来像\\/无论如何我想逃避这个字符串,因此关于非’特殊’转义字符会发生什么的问题。 另一个问题是,如果我有name:\t me (或”name:\\t me”是否有一个函数来逃避它所以有一个标签?我正在使用C#,这些字符串来自一个JSON文件

ASMX webservice – 返回JSON而不是XML

我有一个包含一种方法的Web服务: [WebMethod] public string Movies() { using (var dataContext = new MovieCollectionDataContext()) { var query = dataContext.Movies.Select(m =>new{m.Title,m.ReleaseDate}).Take(20); var serializer = new JavaScriptSerializer(); return serializer.Serialize(query); } } 该方法正确地序列化了对象,但是当我在FireBug中查看响应时,它看起来像这样: [{“Title”:”SQL”,”ReleaseDate”:”\/Date(1224007200000)\/”},{“Title”:”Termonator Salvation”,”ReleaseDate”:”\/Date(1224007200000)\/”}] 这是我使用Kendo Data Source的jQuery方法 $(function () { alert(“Welcome To Kendo”); var dataSource = new kendo.data.DataSource( { transport: { read: { type: “POST”, dataType: “json”, url: “/MovieService.asmx/Movies” […]