Академический Документы
Профессиональный Документы
Культура Документы
namespace EFGetStarted
{
public class Blog
{
public int BlogId { get; set; }
public string Url { get; set; }
1
Свойство Posts определяет связь "родитель-потомок" между Blog и
Post.
Модель таблицы Post
using System;
namespace EFGetStarted
{
public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
namespace EFGetStarted
{
public class BloggingContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
2
public BloggingContext()
{
SQLitePCL.Batteries_V2.Init();
this.Database.EnsureCreated();
}
optionsBuilder
.UseSqlite($"Filename={dbPath}");
}
}
}
Оба свойства в этом классе типа DbSet служат для работы с базовыми
таблицами, представляющими блоги и записи. SQLitePCL.Batteries_V2.Init()
требуется в конструкторе для инициации SQLite в iOS. Функция
OnConfiguring задает расположение базы данных SQLite на физическом
устройстве.
Для выполнения запросов к базе данных используется язык
интегрированных запросов (LINQ). В Entity Framework Core есть встроенный
механизм для работы с LINQ, который позволяет создавать запросы на языке
программирования, а не на SQL, что делает код более читаемым и удобным
для сопровождения.
Вот пример кода для вывода информации из таблицы Blogs:
using (var context = new BloggingContext())
{
var blogs = context.Blogs.ToList();
foreach (var blog in blogs)
{
Console.WriteLine(\$"{blog.Title} - {blog.Url}");
}
}
3
В этом коде мы создаем новый экземпляр контекста BloggingContext и
используем его для получения списка блогов (var blogs = context.Blogs.-
ToList()). Затем мы перебираем все блоги и выводим их название и URL на
консоль (Console.WriteLine($"{blog.Title} - {blog.Url}")). Директива using
используется для обеспечения того, чтобы ресурсы, которые были выделены
в блоке кода, были освобождены при завершении его работы. В данном
случае она гарантирует, что контекст базы данных будет корректно закрыт и
ресурсы, которые он использует, будут освобождены.
Практическая часть
Разработка мобильного приложения на Xamarin Forms с
использованием Entity Framework Core.
На основе проекта из предыдущих работ, добавьте ниже описанный
функционал для вашего мобильного приложения Xamarin Forms и базы
данных SQLite. Для подключения к БД используйте Entity Framework Core.
Требования:
1. Создайте локальную базу данных SQLite (используйте SQL запрос). В
БД необходимо добавить таблицу Users, в которой должны быть поля
для хранения логинов и паролей пользователей.
2. Реализуйте связь вашего мобильного приложения с базой данных при
помощи Entity Framework Core.
3. Напишите код, осуществляющий проверку введенных пользователем
данных на корректность. Для этого выполнить верификацию
введенных данных с информацией, хранящейся в базе данных.
4. В случае успешной проверки вывести всплывающее сообщение “Вы
авторизовались!” с помощью DisplayAlert. В противном случае вывести
сообщение “Введены неверные данные”.
5. Оформите отчет о проделанной работе.