- Регистрация
- 10.09.2021
- Сообщения
- 1 261
- Благодарностей
- 679
- Баллы
- 113
Введение
Всем привет, добро пожаловать на девятнадцатый конкурс статей! В своей статье я расскажу каким образом можно связать ZennoPoster и Entity Framewok. Сразу скажу, данная связка будет в первую очередь полезна тем кто знает c# хотя бы на базовом уровне, остальным предлагаю эту статью в качестве общего развития.
Entity Framework это набор инструментов разработки. Он предоставляет удобный способ работы с данными хранящимися в БД, без необходимости писать много кода для выполнения обычных операций, таких как выборка, вставка, обновление и удаление данных.
Проще говоря, мы будем работать с базой данных на более высоком уровне абстракции. Не будет никаких sql запросов, будут классы и объекты.
Еще один жирный плюс Entity Framework это интеграция с LINQ (Предоставляет удобный и выразительный способ работы с данными, используя синтаксис, похожий на SQL )
Ну и конечно же повышение читаемости кода.
Основная часть
Работать мы будем с Microsoft sql server (где его скачать и как установить вы сможете узнать по первой ссылке в гугле, ничего сложно там нет.) т.к это самый простой вариант, подключение EF к другим СУБД осуществляется с помощью дополнительных библиотек.
Начнем мы с того, что создадим в Visual Studio библиотеку классов, это и будут своего рода наши таблицы.
Теперь нам надо установить сам Entity Framework, не перепутайте с Entity Framework Core, это для другого фреймворка.
После установки создадим нашу модель, видов создания модели несколько, какая каким образом работает я рассказывать не буду, почитаете в гугле если интересно, а мы выберем пустую модель Code First, это создание БД на основе кода который мы с вами напишем.
И вот у нас самонаписался класс модели, так же в файл App.config прописалась строка подключения к нашей БД.
Так же нам в классе Model1 в закоментированом виде приведен пример создания класса MyEntity и добавления его в класс модели. Все комментарии в целом можно удалить, что бы не мешались, т.к dll которую мы подкинем в зенопостер не сможет за собой подтянуть строку подключения из файла конфига нам придется мальца подправить конструктор класса модели, по умолчанию туда передается имя строки подключения из файла App.config, мы же туда передадим сразу строку подключения.
Вот так это в итоге выглядит:
Теперь давайте создадим для теста класс User который у нас будет являться своего рода таблицей. Есть множество атрибутов которые можно применять к полям, с базовыми ознакомиться можно ниже, и подкинем его в нашу модель.
[Key]: Используется для указания первичного ключа в модели данных. Пример:
C#:
public class Customer
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
}
[Required]: Используется для указания, что определенное свойство должно иметь значение и не может быть null. Пример:
C#:
public class Product
{
[Key]
public int Id { get; set; }
[Required]
public string Name { get; set; }
}
[MaxLength]: Используется для указания максимальной длины строки для свойства. Пример:
C#:
public class Product
{
[Key]
public int Id { get; set; }
[MaxLength(50)]
public string Name { get; set; }
}
[Column]: Используется для указания имени столбца базы данных для свойства модели данных. Пример:
C#:
public class Product
{
[Key]
public int Id { get; set; }
[Column("ProductName")]
public string Name { get; set; }
}
[Tablе]: Используется для указания имени таблицы базы данных для модели данных.
Пример:
C#:
[Table("Customers")]
public class Customer
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
}
Ну и наконец можно сделать миграции и паковать нашу либу. В консоль диспетчера пакетов (у кого её внизу VS нету, она в настройках активируется, гугл подскажет) надо прописать 3 команды.
Добавляем ссылки из GAC и дерективы using
Практические примеры
Ну а теперь можно добавить каких нибудь данных в нашу бд и поделать выборки.
Набросал немного кода для добавления пользователей в БД и запустил шаблон на повторение, в итоге наша БД наполнилась.
Вот так просто мы можем перебрать нашу БД как обычный список.
Получаем фамилии всех кто из флориды.
Или то же самое только уже с использованием LINQ.
Вот примеры кода для выполнения базовых операций.
Выборка данных (SELECT):
C#:
using (var context = new YourDbContext())
{
// Получение всех записей из таблицы
var allRecords = context.YourTableName.ToList();
// Получение записей с условием
var filteredRecords = context.YourTableName.Where(x => x.SomeProperty == "SomeValue").ToList();
// Получение одной записи по идентификатору
var singleRecord = context.YourTableName.Find(id);
}
C#:
using (var context = new YourDbContext())
{
// Получение записи, которую необходимо обновить
var recordToUpdate = context.YourTableName.Find(id);
if (recordToUpdate != null)
{
// Обновление свойств записи
recordToUpdate.Property1 = newValue1;
recordToUpdate.Property2 = newValue2;
// и так далее
// Сохранение изменений в базе данных
context.SaveChanges();
}
}
C#:
using (var context = new YourDbContext())
{
// Получение записи, которую необходимо удалить
var recordToDelete = context.YourTableName.Find(id);
if (recordToDelete != null)
{
// Удаление записи из контекста и сохранение изменений в базе данных
context.YourTableName.Remove(recordToDelete);
context.SaveChanges();
}
}
Заключение
Использование Entity Framework в связке с ZennoPoster - это мощный и удобный способ работы с базами данных в автоматизации задач. Entity Framework позволяет легко и эффективно управлять данными, освобождая нас от написания сложных SQL-запросов и обеспечивая более высокий уровень абстракции при работе с базой данных. Благодаря LINQ, мы можем выполнять разнообразные операции с данными, такие как выборка, фильтрация, сортировка и объединение, с помощью простого и понятного синтаксиса. Комбинирование мощности Entity Framework и гибкости ZennoPoster позволяет нам создавать автоматизированные решения, которые легко масштабировать и поддерживать.
Начните использовать Entity Framework сегодня и упростите свою работу с базами данных в ZennoPoster.
Спасибо за внимание)
- Тема статьи
- Другое
- Номер конкурса статей
- Девятнадцатый конкурс статей
Вложения
-
1,4 МБ Просмотры: 108
-
11,2 КБ Просмотры: 98
-
15,2 МБ Просмотры: 101
Для запуска проектов требуется программа ZennoPoster или ZennoDroid.
Это основное приложение, предназначенное для выполнения автоматизированных шаблонов действий (ботов).
Подробнее...
Для того чтобы запустить шаблон, откройте нужную программу. Нажмите кнопку «Добавить», и выберите файл проекта, который хотите запустить.
Подробнее о том, где и как выполняется проект.
Последнее редактирование: