2015-08-29 2 views
0

У меня есть запрос, который возвращает один документИзбегайте попадания обратно системные свойства DocumentDb

Select * от корня

Над запрос возвращает также дополнительные системные свойства, такие как _ts, _self, _etag и т.д. Я не хочу, чтобы мой запрос чтобы вернуть эти дополнительные свойства. И я хочу *, поскольку я не хочу указывать столбцы для выбора.

Я выполняю этот запрос в sproc. Любой лучший способ не возвращать свойства системы?

ответ

0

Я не знаю, как это сделать. Это не займет значительного количества ресурсов для их получения, и вы всегда можете просто игнорировать их. В качестве альтернативы вы можете удалить их, как только будут получены документы, используя следующий код:

for (var _i = 0, var _len = resultsArray.length; _i < _len; _i++) { 
    var row = resultsArray[_i]; 
    delete row._ts; 
    delete row._self; 
    delete row._etag; 
} 
+0

Я не хочу передавать эти данные в пользовательский интерфейс. SelfLink - важная информация для отображения в пользовательском интерфейсе. Я могу удалить их на уровне сервиса, но мне было интересно, предоставит ли DocumentDb мне что-то, чтобы удалить их, прежде чем вернуть response.setBody (документ) обратно на уровень сервиса. –

+0

Итак, удалите их в своем sproc, прежде чем возвращать код вызова. Я подозреваю, что вы все-таки делаете какие-то другие манипуляции, иначе зачем использовать sproc? Я отредактирую ответ с примером кода о том, как их удалить. Обратите внимание: вы не можете удалить _etag. Полезно избегать конфликта, если документ редактируется между чтением и вашей записью. –

+0

Спасибо. Я могу использовать delete documentsRead [i] ._ self, и это сработало. –

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