.NET/Mono Database Engine
Существуют ли какие-либо СУБД, которые полностью реализованы в .NET и Mono?
Я хотел бы иметь решение DB, которое будет работать на всех платформах через Mono, так что мне не нужно беспокоиться о том, что для каждой платформы есть отдельные исходные двоичные файлы.
Ответы
Ответ 1
VistaDB полностью поддерживает .NET и поддерживается в Mono. Вы можете встроить свой сервер БД в свое приложение, так что нет дополнительной настройки, единственная проблема заключается в том, что это не бесплатный продукт.
Firebird имеет версию .NET и является openource, которая также работает на Mono. Там также есть адаптер Lucene, потому что вы хотите использовать его для поиска.
Также можно просмотреть эту страницу, в которой перечислены поддерживаемые поставщики данных и т.д. в Mono
http://www.mono-project.com/Database_Access
Ответ 2
db4o - это механизм объектной базы данных (написанный как на Java, так и на С#), который компилирует/запускает плавно под Mono.
Ответ 3
csharp-sqlite http://code.google.com/p/csharp-sqlite
Ответ 4
SQLite не написан на .NET, но есть .NET-адаптер (с поддержкой linq для сущностей), и он переносится на все платформы, которые вы, вероятно, рассмотрите (например, в Firefox, Safari, сабвуфер, яблочная апертура и скайп). Если вы ищете проверенную, широко принятую, открытую лицензию db, это хороший соперник.
Тем не менее, db4o, безусловно, является хорошей альтернативой для упоминания, особенно потому, что он так легко интегрируется в среду OO (с которой db, основанный на sql, не так).
Ответ 5
Codegear BlackFish нацеливается на это. Я не уверен в поддержке Mono.
Ответ 6
Если бы я был вами, я бы предпочел MongoDB, а также Norm С# driver.
Ответ 7
iBoxDB.NET может работать на большинстве платформ .NET и Mono, включая .NET, Mono, Unity3D, Xamarin
Ответ 8
Я недавно прочитал, что теперь есть порт .NET HSQLDB (100% база данных Java, я бы предположил, что .NET-порт - это 100% -ный код .NET). веб-сайт, кажется, сейчас не работает, но вы должны взглянуть на него.
Ответ 9
Полностью управляемый порт С# для SQLite3 предлагается в других ответах, но никакой выпуск на сегодняшний день не поддерживает Linux или Mac OS X, несмотря на то, что он компилируется с компилятором Mono С#.
Будущая версия будет корректно запущена на тех платформах, которые не являются Windows, с временем выполнения Mono. С некоторыми предостережениями, исходный репозиторий содержит рабочий код, который можно использовать сейчас.
Ответ 10
У меня есть один на ходу в https://github.com/mcintyre321/PieDb - он подошел
XCOPY для развертывания
Прозрачный - вам не нужны свойства Id на ваших объектах *.
Он лицензирован MIT
Он имеет очень малую кодовую базу.
Он использует журнал транзакций JSON для записи изменений (поэтому ваши объекты должны быть сериализованы Json). Может записываться на диск или работать в памяти для тестирования
Транзакционные сеансы (aka Unit of Work) с оптимистичным concurrency