Monotouch Sqlite-net или ADO.Net
Я хотел бы использовать базу данных Sqlite в своем приложении Monotouch. С http://docs.xamarin.com/recipes/ios/data/sqlite я вижу два варианта.
- Sqlite-сеть
- ADO.NET
Проводя исследование, я обнаружил, что Sqlite-net прост в использовании, работает как на iOS, так и на Android, но не поддерживает концепцию внешнего ключа. Мне нужно иметь отношения в моем БД. Студенческий стол связан с классами, профессором, таблицей заданий. Не так сложно!!! Поддерживает ли Sqlite-net такие отношения? Какой из них лучше выбрать Sqlite-net или ADO.Net. Ценится... Спасибо
1 ответ
ADO.Net также не дает вам поддержки для отношений. Это только дает вам сырые классы, такие как SQLCommand
а также SQLDataReader
,
Я очень рекомендую sqlite-net, так как это огромная экономия времени в ORM.
Вы можете настроить внешние ключи, вызвав ручные операторы SQL в sqlite-net, что в любом случае вы бы сделали с ADO.Net.
Итак, с помощью sqlite-net вы можете настроить базу данных несколькими способами:
- Вызовите APIsqlite-net для создания таблиц на основе ваших классов C#, а затем добавьте вещи, которые он не поддерживает с ручным SQL, такие как внешние ключи и индексы
- Включите в приложение пустую базу данных с уже настроенной полной схемой
- Создайте всю базу данных с помощью исходного сценария SQL
Я предпочитаю использовать вариант № 2, если мне нужен полный контроль над схемой базы данных (и немного проще включить файл базы данных, который я сделал в SQLite Expert). sqlite-net прекрасно работает с существующей базой данных.