Разработка на .NET MAUI | Перенос базы данных из Ms Access в SQLite
Leadersoft.ru

Разработка на .NET MAUI

С использованием C#, XAML, Ms Access и т.п.

В этом блоге публикуется информация о разработке приложений на .NET MAUI .NET MAUI (Multi-platform App UI) — это бесплатный кроссплатформенный фреймворк от Microsoft для создания нативных приложений с использованием C# и XAML. Простыми словами: вы пишете код один раз, и он работает сразу на Android, iOS, macOS и Windows.

Перенос базы данных из Ms Access в SQLite

Для переноса таблиц из Access в C#-модели для ORM (например, sqlite-net-pcl) нужно следовать правилу: одна таблица = один классодин столбец = одно свойство. Вот как это выглядит на практике:

Пример преобразования

Допустим, в Access у вас есть таблица Books со столбцами:

  • ID(Счетчик, Ключ)
  • Title(Короткий текст)
  • Price(Числовой)

В .NET MAUI ваш класс будет выглядеть так:

 

using SQLite;

public class Book
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }
    [MaxLength(250), Indexed] // Ограничение длины и создание индекса для поиска
    public string Title { get; set; }
    public double Price { get; set; }
}

Типы данных (Сопоставление)

При переносе из Access используйте эту шпаргалку:

Быстрое создание базы в коде

После того как вы написали классы-модели, создание базы данных в MAUI занимает пару строк:

// 1. Путь к файлу в системной папке приложения
string dbPath = Path.Combine(FileSystem.AppDataDirectory, "MyAccessData.db3");

// 2. Подключение
var db = new SQLiteAsyncConnection(dbPath);

// 3. Автоматическое создание таблиц на основе классов
await db.CreateTableAsync<Book>();
await db.CreateTableAsync<Author>(); // если есть еще таблицы

Лайфхак для ленивых

Если в вашей базе Access десятки таблиц, не пишите классы вручную:

  1. Экспортируйте схему Access в SQL-файл.
  2. Используйте онлайн-сервисы (например, "sql to c# class converter") или расширения Visual Studio, чтобы мгновенно сгенерировать код классов.

 Источник статьи

Добавить комментарий

Loading