2016-07-13 7 views
1

JSON.Stringifyにまず2オブジェクトを削除します。C#文字列は、私はこのようになりますJSON文字列化オブジェクト受け付けMVCコントローラ持っ

[{\"name\":\"Name\",\"value\":\"1\"}, 
{\"name\":\"Mobile\",\"value\":\"2\"}, 
{\"name\":\"Gender\",\"value\":\"Male\"}, 
{\"name\":\"Birthdate\",\"value\":\"2016-07-13\"}, 
{\"name\":\"Address\",\"value\":\"3\"}] 

をそして私は、文字列関数を使用して、最初の2つのオブジェクトを削除したいですC#で次のように表示されます。

[{\"name\":\"Gender\",\"value\":\"Male\"}, 
{\"name\":\"Birthdate\",\"value\":\"2016-07-13\"}, 
{\"name\":\"Address\",\"value\":\"3\"}]` 

どうすれば簡単に行うことができますか?

+0

M.Schena IM @行うための方法を探してこれをjsonに戻して構文解析する必要はなく、 C# –

+0

ok、文字列関数のみを使用したサンプルを作成しました –

答えて

0

string s = "[{\"name\":\"Name\",\"value\":\"1\"}, {\"name\":\"Mobile\",\"value\":\"2\"}, {\"name\":\"Gender\",\"value\":\"Male\"}, {\"name\":\"Birthdate\",\"value\":\"2016-07-13\"}, {\"name\":\"Address\",\"value\":\"3\"}]"; 
string[] splitted = s.Split('{'); 
s = s.Replace("{" + splitted[1], ""); 
s = s.Replace("{" + splitted[2], ""); 

出力:

[{"name":"Gender","value":"Male"}, 
{"name":"Birthdate","value":"2016-07-13"}, 
{"name":"Address","value":"3"}] 
+1

nice!私は何を探しています。ありがとう –

2

うまくいくと思います。あなたは次の操作を行うことができ、文字列関数を使用して

var jArr = JArray.Parse(json); 

jArr.Descendants().OfType<JProperty>() 
       .Where(p => p.Name == "Name" || p.Name == "Mobile") 
       .ToList() 
       .ForEach(att=>att.Remove()); 

var newJson = jArr.ToString(); 

OR

var jType = new[] { new{Gender="", Birthdate="", Address=""} }; 
var newJson = JsonConvert.SerializeObject(
        JsonConvert.DeserializeAnonymousType(json, jType)); 
関連する問題