C# 我如何使用json格式获取值?
您好,这是我的json值 如何获取值C# 我如何使用json格式获取值?,c#,C#,您好,这是我的json值 如何获取值 "a195cc41-4b37-4192-8949-86ae109cfa80,{\"UserID\":2,\"CurrentSessionID\":\"746076a0-6ab9-415a-849a-2755837981bb\",\"Name\":\"SERDAR\",\"Surname\":\"SENGUL\",\"Email\":null,\"Password\":null,\"RememberMe\":false,\"IsActive\":fals
"a195cc41-4b37-4192-8949-86ae109cfa80,{\"UserID\":2,\"CurrentSessionID\":\"746076a0-6ab9-415a-849a-2755837981bb\",\"Name\":\"SERDAR\",\"Surname\":\"SENGUL\",\"Email\":null,\"Password\":null,\"RememberMe\":false,\"IsActive\":false,\"IsDeleted\":false,\"CreateDate\":\"2015-01-17T09:15:03.6339968+02:00\"},17.01.2015 09:15:03"
var id = clientAuth.Split(',')[0] > it's working (773484c2-5730-4cfa-a17e-2eb041e8c225)
var date = clientAuth.Split(',')[11] > it's working (24.01.2015)
but I can not take get usermodel a value
that comes
var UserID = clientAuth.Split(',')[1] {\"UserID\":2"
var name = clientAuth.Split(',')[2] {\"Surname\":SENGUL"
var createDate = clientAuth.Split(',')[2] "\"CreateDate\":\"2015-01-17T08:44:30.1681286+02:00\"}"
如果我理解你的问题,你需要这样做:
var firstComma = rawData.indexOf(',');
var lastComma = rawData.lastIndexOf(',');
var jsonString = rawData.slice(firstComma+1,lastComma-firstComma);
var obj = JSON.parse(jsonString);
然后您可以参考对象的属性,如:
var createdate = obj.CreateDate;
var surname = obj.Surname;
祝你好运
编辑:如果愿意,还可以使用正则表达式查找“{..}”字符串。1。它不是有效的json。
2.用于解析C#代码中的json:
YourObject obj=JsonConvert.DeserializeObject(json);
你好,谢谢你的回答……是的,没错,但我看到了这个错误,我想可能是“}”当然,我的错。由于对象中有逗号,因此不能使用拆分(',')。让我编辑答案。您可以使用像/\{[\s\s]+\}/这样的正则表达式来匹配对象字符串。即使您有嵌入式对象,这也应该有效,因为正则表达式在默认情况下是贪婪的。。但我看到了这个错误:)切片键不工作我犯了一个错误?再次抱歉。我太急了lastcoma firstComma
太大。应该是lastcoma firstComma-1
。我想这会教我校对。你好,阿米尔,不,这是当前有效的json格式,好吧,我解决了这个问题,现在它工作得很好,但我如何才能得到值?您可以构建一个反映json(相同属性)的C#对象,然后像我在示例中所做的那样在反序列化对象上使用通用版本,或者如果您想动态访问您的对象,可以使用动态对象(了解它)。
YourObject obj = JsonConvert.DeserializeObject<YourObject>(json);