Tag: json

将JSON文件转换为C#对象

我需要一些帮助将JSON文件转换为C#对象。 我一直在使用Json.NET库。 JSON文件格式如下: {“174.845620 -36.913447 WGS84”:[{“uuid”:”a7e72b5c1fb96f1452d3c64fe89c7e6a”,”name”:”35 Carbine Road”,”suburb”:”Mount Wellington”,”town”:”Auckland”,”district”:”Auckland City”,”region”:”Auckland”,”island”:”North Island”,”x”:2674839,”y”:6474828,”longitude”:174.845707,”latitude”:-36.913385,”locality”:”Mount Wellington, Auckland, Auckland City”}],”174.698503 -36.788258 WGS84″:[{“uuid”:”96fb8ae43b6791f5f2b7006d8818b9ad”,”name”:”1\/248 Beach Haven Road”,”suburb”:”Birkdale”,”town”:”North Shore”,”district”:”North Shore City”,”region”:”Auckland”,”island”:”North Island”,”x”:2661988,”y”:6488992,”longitude”:174.698375,”latitude”:-36.78816,”locality”:”Birkdale, North Shore, North Shore City”}]} 我已经创建了以下类来映射JSON: public class WGS84Coordinate { public string uuid{get; set;} public string name{ get; set;} public string suburb { get; set;} public string town { get; set;} […]

将JSON响应转换为DataTable

我在JSON中提供了以下示例响应。 我希望能够将它转换为C#DataTable,这样我就可以从那里遍历元素和程序。 { “totalItems” : 10, “pageSize” : 20, “page” : 1, “items” : [ { “type” : “call”, “uri” : “http://link.com”, “created” : “2014-07-28T10:02:48.000+0000”, “callType” : “external”, “from” : “01234567891”, “to” : “01234567892”, “callId” : “ast01-1406541749.604847”, “links” : { “recordings” : “http://link.com” } }, { “type” : “call”, “uri” : “http://link.com” “created” : “2014-07-22T15:21:02.000+0000”, […]

反序列化包含单个或一组对象的JSON

我正在尝试反序列化包含图片url的事件数据。 当事件包含单个图像时,JSON字符串的格式为: “images”: { “image”: { “small”: {…}, “width”: “48”, “creator”: null, “thumb”: {…}, “height”: “48”, “url”: “http://example.com/image1.jpeg”, “medium”: {…}, “id”: “1” } } 当有多个图像可用时,响应的格式将更改为: “images”: { “image”: [ { “small”: {…}, “width”: “48”, “creator”: null, “thumb”: {…}, “height”: “48”, “url”: “http://example.com/image1.jpeg”, “medium”: {…}, “id”: “1” }, { “small”: {…}, “width”: “48”, “creator”: null, “thumb”: […]

Detect是textblock上的网站地址或电子邮件地址

我有一个TextBlock,其数据来自JSON。 我想如果文本阻止网站地址或电子邮件,文本颜色变为蓝色,用户可以点击(如果电子邮件地址将转到电子邮件应用程序,用户可以直接写入该地址的电子邮件。同时,如果网站地址,它会立即打开网页浏览器)。 XAML: 来自http://…/mobileapp/GetPostByCategoryXMLa?term_id = 378的JSON数据示例: 我该如何申请?

使用DataContractJsonSerializer自定义DateTime序列化/反序列化

如何使用DataContractJsonSerializer将默认的JSON DateTime序列化/反序列化更改为自定义格式,以用于对象图中的所有DateTime属性? Json.Net库处理这个,但我不能在这个项目中使用它。 我尝试过IDataContractSurrogate但我无法访问DateTimes的值 – >字符串转换。 模型和预期的JSON是: [DataContract] public class Client { [DataMember(Name = “id”)] public int Id {get; set; } [DataMember(Name = “name”)] public string Name {get; set; } [DataMember(Name = “contacts”)] public IList Contacts {get; set; } [DataMember(Name = “created”)] public DateTime Created {get; set; } [DataMember(Name = “changed”)] public DateTime Changed {get; […]

使用www-form-urlencoded发送时,为什么我的JSON字符串在服务器端为null?

我有一个使用jquery / ajax的ASP.NET / MVC4应用程序。 我正在尝试使用$.ajax( … )从客户端向服务器发送一个非常大的字符串 首先,我们使用contentType “application/json”来完美地工作。 但是,在这种特殊情况下,服务器会抛出exception,因为传输的数据太长。 我已经尝试了一切,以增加web.config文件中的反序列化器的maxJsonLength ,但它不起作用,没有人能弄明白为什么。 作为一种解决方法,有人建议将contentType作为”application/x-www-form-urlencoded; charset=UTF-8” ,然后让我的控制器手动反序列化对象而不是让MVC框架执行它。 使用Javascript: function AjaxRequest(data, dataType, type, url, contentType, success, error, args) { if (url.indexOf(“MyController/SomeMethodInMyController”) > 0) contentType = “application/x-www-form-urlencoded; charset=UTF-8”; data = JSON.stringify(data); $.ajax({async: args.async, cache: args.cache, data: data, dataType: dataType, type: type, url: url, contentType: contentType, traditional: true, headers […]

解析WebAPI中的接口

我有一个带有以下签名的控制器方法 [HttpGet] [Route(“results”)] public List GetResults() { return repo.GetResults(); } 毫不奇怪,我得到一个JSON .NETexception,说JSON .NET无法将IResult解析为具体类型。 有没有办法为JSON .NET提供具体的类(Result),所以我不必更改方法的单一性?

Newtonsoft.json序列化和反序列化base / inheirited类来自共享项目

所以我有两个类,如下所示。 它们都在同一个命名空间和同一个共享项目中。 public class Person{ public string Name{get;set;} } public class EmployedPerson : Person{ public string JobTitle{get;set;} } 当我将这些项目serilized到rabbitmq时,我将序列化为基类,如下所示: JsonSerializerSettings settings = new JsonSerializerSettings { TypeNameAssemblyFormatHandling = TypeNameAssemblyFormatHandling.Simple, TypeNameHandling = TypeNameHandling.Objects }; JsonConvert.SerializeObject(input, settings) 但是,当反序列化时,我会遇到问题。 我希望能够执行如下所示的操作,我将反序列化为基类,然后检查它是否是一个非常类型。 类型检查: Person person = Deserialize(e.Body, Encoding.Unicode); if (person is EmployedPerson) { logger.LogInformation(“This person has a job!”); } 反序列化设置: JsonSerializerSettings […]

将web api blob读入一个字符串,我可以将其作为json对象的一部分发送到服务器并转回文件

我正在尝试将wav文件转换为字符串,我可以将其作为json对象的一部分发送到服务器,以便在服务器上我可以将该字符串转换回文件。 我曾尝试使用readAsBinaryString并将其作为文本读取,在将字符串读入字节数组时无法获得过去的错误。 reader.onloadend = saveMedia; reader.readAsText(Blob); //reader.readAsBinaryString(Blob); also tried. 然后回调发送一个ajax请求,其中一个对象持有“reader.result”中的字符串,并在服务器上我尝试过如下操作: System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding(); byte[] BinaryData = encoding.GetBytes(stringFromRequest); 下面这个问题的答案似乎是不应该这样做。 但我真的想这样做,因为我使用的另一个工具(微风js)。 不希望对文件数据类型使用单独的post操作。 相关: 文件API – Blob到JSON

解析JSONObject

我试图从Web服务中获取JSON,我能够弄清楚。 BTW这是我的JSON数据 – { “X-YZ-111/AB.CD”: { “P1”: “F”, “P2”: “43.46” }, “X-YZ-112/AB.CD”: { “P1”: “F”, “P2”: “8.02” }, “X-YZ-113/AB.CD”: { “P1”: “F”, “P2”: “9066.58” }, “X-YZ-114/AB.CD”: { “P1”: “F”, “P2”: “6.00” }, “X-YZ-115/AB.CD”: { “P1”: “F”, “P2”: “6.00” }, “X-YZ-116/AB.CD”: { “P1”: “F”, “P2”: “10.00” }} Using Windows.Data.Json; private async void getJSON_click(object sender,RoutedEventArgs e) { […]