2015-05-30 3 views
0

Есть ли простое/любое решение для помещения JSON-представления данных документа (без родственных свойств DocDb, таких как _rid и т. Д.) В ответ (в хранимых процедурах) или есть решение где-то в Microsoft. Пространство имен Azure.Documents?DocumentDb - получить представление Json документа

+0

Я отредактировал ваше название. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

ответ

2

Оператор удаления JavaScript можно использовать, чтобы удалить собственные свойства DocumentDB. Посмотрите на эту тему: How do I remove a property from a JavaScript object?

Что-то, как это должно работать:

delete doc._rid; 
delete doc._ts; 
delete doc._etag; 
getContext().getResponse().setBody(doc); 
+0

Спасибо за ответ. Существует довольно много решений, связанных с удалением свойств объекта (sproc, внутри контроллера (MVC мудрый) и т. Д.). Я просто надеялся на «родное» решение. –

2

У меня был тот же самый вопрос. Я нашел этот путь (в C#):

dynamic d = Newtonsoft.Json.Linq.JObject.Parse(doc.ToString()); 
string versionData = d["Employees"]["@version"]; 
string employeeNameData = d["Employees"]["@name"]; 

Где «Сотрудники» это имя документа (то есть, имя таблицы в терминах SQL), а версия является атрибутом этого документа.

Таким образом, вы можете сделать общий запрос по любым данным, хранящимся внутри документа. Надеюсь это поможет! :)

+0

Конечно, вы также можете сделать следующее непосредственно: dynamic jsonObj = doc; (где doc - документ Microsoft.Azure.Documents.Document) , но вы не можете сделать следующее: строка versionData = d ["Сотрудники"] ["@ version"]; и вы должны: строка versionData = d.Employees. ["@ Version"]; , что делает его несколько неэквивалентным – Deb

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