Я пишу приложение, в котором пользователь может написать json-код и сохранить этот json-код с идентификатором и коллекцией. Другими словами, они определяют Id, Collection (строка; [a-zA-Z0-9]) и Data (json, может быть любым, что является допустимым json).
До сих пор я использовал RavenDb для этого, потому что я думал, что база данных документов будет идеальной, но у меня были некоторые проблемы с запросами.
Один из объектов, который необходимо сохранить и запросить, является следующим:
{
"network": "some_network",
"names": ["name1","name2"],
"data": {"values":[],"keys":[]}
}
Этот объект должен храниться с некоторым идентификатором, который либо указан, либо автоматически сгенерирован (если задано null
), и коллекцией (всегда должен быть указан), а затем мне нужно иметь возможность запрашивать его на основе на коллекцию, сеть и одно имя.
Например, у меня есть код query('users', '{"network":"some_network","names":"name1"}')
, и мне нужен этот код для возврата этого объекта (и любого другого объекта, который ему соответствует).
Кроме того, я согласен с изменением базы данных, но база данных должна быть в состоянии работать внутри процесса (самостоятельно) и иметь возможность работать без прав администратора без установки (другими словами, она может привязка к имени хоста / ip, как это делает wcf).
Как мне достичь чего-то подобного?