Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过一些属性告诉JSON反序列化程序只是字符串化JSON的简单方法?_C#_Asp.net Mvc_.net Core_Json.net - Fatal编程技术网

C# 通过一些属性告诉JSON反序列化程序只是字符串化JSON的简单方法?

C# 通过一些属性告诉JSON反序列化程序只是字符串化JSON的简单方法?,c#,asp.net-mvc,.net-core,json.net,C#,Asp.net Mvc,.net Core,Json.net,示例客户端JSON: { Foo: "Hello!" Bar: { a: 1, b: 2 } } 预期的伪结果: Foobar.Foo = "Hello!" Foobar.Bar = "{a:1, b:2}" 您可以使用Newtonsoft.Json.Linq.JRaw类型 class Foobar { 公共字符串Foo{get;set;} 公共JRaw条{get;set;} } 用法

示例客户端JSON:

{
   Foo: "Hello!"
   Bar: {
      a: 1,
      b: 2
   }  
}
预期的伪结果:

Foobar.Foo = "Hello!"
Foobar.Bar = "{a:1, b:2}"

您可以使用
Newtonsoft.Json.Linq.JRaw
类型

class Foobar
{
公共字符串Foo{get;set;}
公共JRaw条{get;set;}
}
用法示例:

var res=JsonConvert.DeserializeObject(yourJsonString);
var bar=res.bar.Value.ToString();//{“a”:1,“b”:2}
请注意,
JRaw.Value
的类型为
object
,因此需要
.ToString()
,或者您可以强制转换

Foobar.Foo = "Hello!"
Foobar.Bar = "{a:1, b:2}"