C# 在C中读取JSON#
我正在创建一个web服务以获取JSON中的输入。请参阅下面的代码: 注册。asmxC# 在C中读取JSON#,c#,json,json.net,C#,Json,Json.net,我正在创建一个web服务以获取JSON中的输入。请参阅下面的代码: 注册。asmx using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; using System.Web.Script.Serialization; using System.IO; using AnkTech.IsItFair.WebService.Provid
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Script.Serialization;
using System.IO;
using AnkTech.IsItFair.WebService.Providers;
using System.Json;
using System.Runtime.Serialization.Json;
using Newtonsoft.Json.Serialization;
using Newtonsoft.Json;
namespace WebService
{
/// <summary>
/// Summary description for Registration
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class Registration : System.Web.Services.WebService
{
[WebMethod]
public int SaveUser()
{
string json =
@"{""data"":[{""Id"":""518523721"",""Name"":""ftyft""}]}";
Users tempRecord = JsonConvert.DeserializeObject<Users>(json);
return 1;
}
}
}
当我检查我的对象tempRecord时,我发现我的两个属性的空值,即Id和Name。我做错了什么。请帮忙。如果你是靠休息来做的,那么你可以这样做
[WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "/index")]
要反序列化json
var userList = JsonConvert.DeserializeObject<List<User>>(json);
string json = JsonConvert.SerializeObject(employeeList, Formatting.Indented);
对于序列化和反序列化以及更多文档,您可以转到,您需要添加一个新的poco类,例如
public class UserData
{
[JsonProperty(PropertyName = "data")]
public IList<Users> Users { get; set; }
}
公共类用户数据
{
[JsonProperty(PropertyName=“data”)]
公共IList用户{get;set;}
}
然后
var tempRecord = JsonConvert.DeserializeObject<UserData>(json);
var tempRecord=JsonConvert.DeserializeObject(json);
它应该会起作用 尝试从JSON示例中删除
数据
(使用对象列表,例如:[{“Id”:1,“Name”:“Foo”},{…},{…}]
),将类重命名为用户
,并使用列表
反序列化。并阅读文档。
var tempRecord = JsonConvert.DeserializeObject<UserData>(json);