2015-08-12 2 views
-1

У меня есть строка, как это, которое я получил из выражения отчета:JSON сериализации добавив дополнительный символ как «»

jql = @"(Project in (""CI"") and Status in (""Open"") and issueType in (""Action Item"")) or issueKey = ""GR L-1"" order by Created asc"; 

Я превратили его в JSON и получить результат, как этот:

jql = jql.Replace("\"", "'"); 
jql = "{" + "\"" + "jql" + "\"" + ": " + "\"" + jql + "\"" + "}"; 

получить ниже JSON:

{"jql": "(Project in ('CI') and Status in ('Open') and issueType in ('Action Item')) or issueKey = 'GR L-1' order by Created asc"} 

Когда я делаю serializasion так:

string data = JsonConvert.SerializeObject(request); 

Его дает мне жало, как это:

{"jql":"{\"jql\": \"(Project in ('CI') and Status in ('Open') and issueType in ('Action Item')) or issueKey = 'GR L-1' order by Created asc\"}","startAt":0,"maxResults":0,"fields":[]} 

и это вроде неправильно строка. На самом деле я хочу строку, как это:

{"jql": "(Project in ('CI') and Status in ('Open') and issueType in ('Action Item')) or issueKey = 'GR L-1' order by Created asc"} 

Примечание: Мне нужно сделать запрос, как это:

SearchRequest request = new SearchRequest(); 
request.JQL = jql; 
string data = JsonConvert.SerializeObject(request); 
string result = runQuery(JiraResource.search, data, "POST"); 

Я пытался так: Escape characters after Serializing using Json Однако, это не работает ...

На самом деле я хочу строку, как это:

{"jql": "(Project in ('CI') and Status in ('Open') and issueType in ('Action Item')) or issueKey = 'GR L-1' order by Created asc"} 

Как я могу сделай это?

ответ

2

Этот код работает для Вашего случая:

string jql = @"(Project in (""CI"") and Status in (""Open"") and issueType in (""Action Item"")) or issueKey = ""GR L-1"" order by Created asc"; 
jql = jql.Replace("\"", "'"); 
string result = JsonConvert.SerializeObject(new { jql = jql }); 

в результате выходной сигнал

{ "jql": "(проект в ('CI') и статус в ('Open') и issueType in ('Action Item')) или issueKey = 'GR L-1' order by Created asc "}

как предполагалось.

+0

Это именно то, что я сделал ранее. В любом случае, спасибо за ответ. – AskMe

Смежные вопросы