Довольно уверен, что флаг InjectNonPublic
на NinjectSettings
позволяет вам настроить его, чтобы делать то, что вы хотите - ближайшая ссылка , которую я могу быстро найти
поддерживаться в течение какого-либо значительного промежутка времени, я не знаю - инъекции рядовых - это просто плохая идея (вместе с Injection и ассоциированными негодяями: P)
Я не знаю ни одной базы данных, которая бы предоставила вам эту функциональность из коробки; здесь много сложностей из-за необходимости в конечном итоге согласованности и разрешения конфликтов (например, что произойдет, если сеть разделится на 2 половины, и вы обновите что-то до значения 123, а я обновлю его на другой половине до 321, а затем сети снова подключаются?)
Возможно, вам придется свернуть свою собственную.
Для некоторых идей о том, как это сделать, ознакомьтесь с дизайном системы Yahoo PNUTS: http://research.yahoo. com / node / 2304 и Dynamo от Amazon: http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html
Я не знаю ваших требований или приложений, но это не вопрос типа быстрого ответа. Мне очень интересно узнать, что говорят другие. Однако у меня есть предложение, которое может сработать или не сработать для вас, в зависимости от ваших требований и ситуации. в частности, это не поможет, если вашим пользователям необходимо использовать приложение, даже когда сеть недоступна (автономный доступ).
Поддержание синхронизации нескольких небольших баз данных - довольно сложная задача, которую нужно выполнять правильно. Есть ли возможность иметь только одну централизованную базу данных и либо клиентские приложения, подключенные напрямую к ней, либо (мое предпочтительное решение) написать некоторые веб-службы для обработки доступа / обновления данных вместо того, чтобы иметь кучу клиентских баз данных?
I осознайте, что это ограничивает офлайн-доступ, но вы можете использовать различные стратегии кэширования. (Что, конечно, возвращает вас к исходному вопросу.)
Это проблема с уже установленным корпусом исследований (о которых люди, по-видимому, не знают). Я предлагаю не изобретать плохое, неисправное колесо, если это не является абсолютно необходимым (например, такие необычные требования, чтобы разрешить тривиальное решение).
Некоторые ключевые слова: репликация , мобильные СУБД , распределенные отключенные СУБД .
Также актуальны эти исследовательские работы (как пример этой области исследований):
... and so on.
Проверьте SymmetricDS. SymmetricDS - это программное обеспечение с веб-интерфейсом, не зависящее от базы данных, предназначенное для синхронизации/репликации данных. Она использует веб-технологии и технологии баз данных для репликации таблиц между реляционными базами данных в режиме, близком к реальному времени. Программное обеспечение предназначено для масштабирования для большого количества баз данных, работы с низкоскоростными соединениями и выдерживания периодов перебоев в работе сети.