Лучший вариант для встроенных баз данных с использованием.Net 4.0/4.5

Кто-нибудь знает лучший вариант для встроенных баз данных с использованием.Net 4.0/4.5

Приложение ориентировано на Windows.

Я использую SQLite для своего проекта в течение многих лет. Тем не менее, технология сильно изменилась со времени.Net 2.0. Я обновляю свой проект с.Net 2.0 до 4.0 или 4.5. Проблема с SQLite заключается в поиске хорошей управляемой библиотеки NATIVE .Net, которая не нуждается в неуправляемой DLL. Кроме того, я вынужден скомпилировать приложение в X-86 или 64 в зависимости от того, какую библиотеку SQLite я использую. Таким образом, любая опция процессора вызовет сбой приложения.

Я перехожу на Compact Server 4.0. Несмотря на то, что я заставляю его работать отлично, я начинаю удивляться, если это еще одна заброшенная технология Microsoft.

Мои вопросы:

  1. Возможен ли Compact Server CE 4.0 для современных технологий и для будущего?
  2. Является ли SQLite лучшим вариантом, и есть ли реально управляемый код, который будет работать в ЛЮБОМ ЦП?
  3. Есть ли лучшие варианты с открытым исходным кодом, которые можно использовать и конвертировать без особого труда.

1 ответ

Решение

Этот вопрос включает в себя много мнений, поэтому помните, что здесь я напишу свое мнение (как Сообщество Wiki). Это ответ вместо комментария только потому, что он слишком длинный.

Возможен ли Compact Server CE 4.0 для современных технологий и для будущего?

Я бы сказал, что это так, и это не будет оставлено в ближайшее время. Конечно, мы не можем сказать, что произойдет через 10 лет (или даже через 5 лет), но это стабильная, хорошо известная технология. Дело в том, если это хорошо для вас; это удовлетворяет всем вашим требованиям? Сравните это с другими технологиями (также от Microsoft), которые ищут сравнения (также здесь, на SO).

Является ли SQLite лучшим вариантом, и есть ли реально управляемый код, который будет работать в ЛЮБОМ ЦП?

Вы по-прежнему можете скомпилировать свое приложение для любого ЦП с сохранением неуправляемой библиотеки, пока не развернете только одну из них (проверьте методы, используемые, например, в SharpDX). О 32/64 битных приложениях я также предлагаю прочитать этот блог.

Есть ли лучшие варианты с открытым исходным кодом, которые можно использовать и конвертировать без особого труда.

Это не вопрос для SO, но да, есть множество разных решений. Мы не можем предложить, какой из них лучше, потому что это зависит от ваших требований. Сколько данных? Вам нужно поддерживать запросы SQL? Критически ли важна производительность? Вы должны поддерживать транзакции? Параллельный доступ? Каждое решение имеет свои плюсы и минусы (с большой базой данных корпоративного уровня вы можете делать практически все, но вы заплатите за это по сложности и стоимости развертывания).

Другие вопросы по тегам