понедельник, 19 мая 2025 г.

SQLite, Project, Users, Chad, EntityFrameWork Core

SQLite, Project, Users, Chad, EntityFrameWork Core

Asp.Net Core, SQLite, Exception

https://ask.chadgpt.ru/share/784658a1-73cd-4f06-b26b-d72c36d77b4d

--------------------------------------------------------------------------------------------------

Проект с SQLite и Entity Framework Core в Visual Studio

Шаг 1: Создание нового проекта

  1. Откройте Visual Studio.
  2. Нажмите Create a new project (Создать новый проект).
  3. Выберите шаблон Console App (.NET Core) или Console App (.NET) (в зависимости от версии .NET). Нажмите Next (Далее).
  4. Укажите имя вашего проекта (например, EFCoreSQLiteDemo), выберите папку для сохранения и нажмите Create (Создать).
  5. Убедитесь, что выбран фреймворк .NET 6.0 или 7.0 (новейшие версии обеспечивают улучшенную поддержку EF Core). Если хотите использовать другой фреймворк, выбирайте подходящий. Нажмите Create.

Шаг 2: Установка необходимых пакетов NuGet

  1. В вашем проекте откройте диспетчер пакетов NuGet:
    • Щелкните правой кнопкой мыши на проекте в Solution Explorer → выберите Manage NuGet Packages... (Управление пакетами NuGet).
  2. Во вкладке Browse найдите и установите следующие пакеты:
    • Microsoft.EntityFrameworkCore.Sqlite (это поставщик для работы с SQLite);
    • Microsoft.EntityFrameworkCore.Tools (для миграций и управления базой данных).
  3. Убедитесь, что они установлены, проверив вкладку Installed (Установлено).

> Для установки пакетов через консоль вы можете использовать альтернативу:

   Install-Package Microsoft.EntityFrameworkCore.Sqlite
   Install-Package Microsoft.EntityFrameworkCore.Tools

Шаг 3: Настройка DbContext и модели

  1. В папке вашего проекта создайте папку, например, Data. Для этого:
    • Щелкните правой кнопкой мыши на проекте → выберите Add -> New Folder (Добавить → Новая папка).
    • Назовите папку, например, Data.
  2. В папке Data создайте новый файл ApplicationDbContext.cs и добавьте следующий код:
using Microsoft.EntityFrameworkCore;

namespace EFCoreSQLiteDemo.Data
{
    public class ApplicationDbContext : DbContext
    {
        public DbSet<User> Users { get; set; }

        // Указываем настройки подключения к SQLite
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlite("Data Source=app.db");
        }
    }
}
  1. На уровне проекта или в той же папке Data создайте файл User.cs с определением сущности. Добавьте в него следующий код:
namespace EFCoreSQLiteDemo.Data
{
    public class User
    {
        public int Id { get; set; } // Первичный ключ
        public string Name { get; set; }
        public int Age { get; set; }
    }
}

Шаг 4: Добавление миграций

  1. Откройте Console Package Manager (Консоль диспетчера пакетов NuGet):
    • Выберите Tools → NuGet Package Manager → Package Manager Console.
  2. Выполните следующую команду, чтобы создать миграцию:
Add-Migration InitialCreate

Это создаст папку Migrations с файлом миграции.

  1. Затем примените миграцию, чтобы создать базу данных:
Update-Database

После этого в корне проекта появится файл базы данных app.db.


Шаг 5: Добавление данных и их чтение

Откройте файл Program.cs и добавьте следующий код:

using System;
using System.Linq;
using EFCoreSQLiteDemo.Data;

class Program
{
    static void Main(string[] args)
    {
        using (var db = new ApplicationDbContext())
        {
            // Добавление данных
            Console.WriteLine("Добавление новых пользователей...");
            db.Users.Add(new User { Name = "Иван", Age = 25 });
            db.Users.Add(new User { Name = "Анна", Age = 30 });
            db.SaveChanges();

            // Чтение данных
            Console.WriteLine("Получение данных из базы:");
            var users = db.Users.ToList();
            foreach (var user in users)
            {
                Console.WriteLine($"ID: {user.Id}, Name: {user.Name}, Age: {user.Age}");
            }
        }
    }
}

Этот код выполняет следующие действия:

  1. Добавляет двух пользователей в базу данных.
  2. Сохраняет изменения.
  3. Считывает всех пользователей из таблицы и выводит их в консоль.

Шаг 6: Запуск проекта

  1. Нажмите Ctrl + F5 (или Start Without Debugging), чтобы запустить проект.
  2. Вы должны увидеть консольный вывод с добавлением данных и списком пользователей из базы.

Шаг 7: Проверка базы данных

SQLite сохраняет базу данных в файл app.db. Чтобы проверить содержимое базы данных, вы можете:

  • Открыть файл с помощью SQLite-менеджера (например, DB Browser for SQLite, который можно скачать бесплатно).
  • Файл находится в папке проекта, и вы сможете увидеть таблицу Users с данными.

Советы и особенности

  • Если вы хотите использовать другой путь для хранения базы данных, измените строку подключения в ApplicationDbContext:
  optionsBuilder.UseSqlite("Data Source=C:\\Path\\To\\Database\\mydb.db");
  • Вы можете добавлять новые таблицы, определяя новые DbSet<> для сущностей и создавая миграции.

Заключение

Проект с SQLite и Entity Framework Core легко реализуется в Visual Studio. EF Core упрощает управление схемой базы данных, манипулирование данными, миграции и их автоматическое создание. SQLite — это отличный выбор для приложений, где требуется легковесное локальное хранилище. После настройки, вы можете масштабировать проект или добавить складирование данных через более крупные СУБД (например, SQL Server).

Комментариев нет:

Отправить комментарий