这是一个JASON格式的字符串
{Mobile:"15050471213",QueryResult:"True",ProvinceName:"江苏",ProvinceID:"16",CityName:"苏州",CityID:"226",AreaCode:"0512",CardType:"江苏移动全球通卡"}
在后台我怎么才能读取QueryResult,CityID这两个节点的值呢,求大神现身帮助。.NETC#JASON
{Mobile:"15050471213",QueryResult:"True",ProvinceName:"江苏",ProvinceID:"16",CityName:"苏州",CityID:"226",AreaCode:"0512",CardType:"江苏移动全球通卡"}
在后台我怎么才能读取QueryResult,CityID这两个节点的值呢,求大神现身帮助。.NETC#JASON
class Program
{
static void Main(string[] args)
{
String json = @"{Mobile:""15050471213"",QueryResult:""True"",ProvinceName:""江苏"",ProvinceID:""16"",CityName:""苏州"",CityID:""226"",AreaCode:""0512"",CardType:""江苏移动全球通卡""}"; Card card = Newtonsoft.Json.JsonConvert.DeserializeObject<Card>(json); Console.WriteLine(String.Format("QueryResult:{0},CityID:{1}", card.QueryResult, card.CityID)); Console.ReadKey();
}
}
public class Card
{
public Boolean QueryResult { get; set; }
public Int32 CityID { get; set; }
}
需要添加对json.net的引用。
using Newtonsoft.Json.Linq; string json="{Mobile:\"15050471213\",QueryResult:\"True\",ProvinceName:\"江苏\",ProvinceID:\"16\",CityName:\"苏州\",CityID:\"226\",AreaCode:\"0512\",CardType:\"江苏移动全球通卡\"}";
var result = JObject.Parse(json);
string s = result["QueryResult"].ToString();
string t = result["CityID"].ToString();
我的天啊, Newtonsoft是个第三方组件库,这点都没明白?
还是把基础概念弄熟了在玩三层吧,别一心向着代码工人的方向发展了。
Newtonsoft.Json.dll正则可以来取到值,但是我不建议你这么做
我的天啊, Newtonsoft是个第三方组件库,这点都没明白?
还是把基础概念弄熟了在玩三层吧,别一心向着代码工人的方向发展了。
我是在公司啊,我们的框架是技术支持组搭建的,是固定的,我们没权利引用第三方DLL的。
/// json字符串转换成对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="json">要转换成对象的json字符串</param>
/// <returns></returns>
public static T DataContractJsonDeserialize<T>(string json)
{
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(T));
T obj = default(T);
using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)))
{
obj = (T)serializer.ReadObject(ms);
ms.Close();
}
return obj;
}
我的天啊, Newtonsoft是个第三方组件库,这点都没明白?
还是把基础概念弄熟了在玩三层吧,别一心向着代码工人的方向发展了。
我是在公司啊,我们的框架是技术支持组搭建的,是固定的,我们没权利引用第三方DLL的。
额 误会了 ,如果是只需要那一个字段,自己写方法也行,没写过,对稳定性不好评估。
还是用别人专门的处理类比较爽啊