books-read.com
books-read.com » Компьютеры и Интернет » Базы данных » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Наш ресурс дает возможность бесплатно читать книгу онлайн Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю. Жанр: Базы данных . Сайт books-read.com дает возможность читать полную версию книги без регистрации и sms. Все книги онлайн, не надо качать fb2, epub, txt.
Добавить книгу Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю в приложение ЧИТАТЬ КНИГУ ОФЛАЙН в приложении ios/android
Перейти на страницу:

public static void DropAndCreateDatabase(ApplicationDbContext context)

{

  context.Database.EnsureDeleted();

  context.Database.Migrate();

}

Создайте еще один метод по имени

ClearData()
, который удаляет все данные из базы данных и сбрасывает значения идентичности для первичного ключа каждой таблицы. Метод проходит по списку сущностей предметной области и применяет свойство
Model
класса
DbContext
для получения схемы и имени таблицы, на которые отображается каждая сущность. Затем он выполняет оператор
DELETE
и сбрасывает идентичность для каждой таблицы, используя метод
ExecuteSqlRaw()
на свойстве
Database
класса
DbContext
:

internal static void ClearData(ApplicationDbContext context)

{

  var entities = new[]

  {

    typeof(Order).FullName,

    typeof(Customer).FullName,

    typeof(Car).FullName,

    typeof(Make).FullName,

    typeof(CreditRisk).FullName

  };

  foreach (var entityName in entities)

  {

    var entity = context.Model.FindEntityType(entityName);

    var tableName = entity.GetTableName();

    var schemaName = entity.GetSchema();

    context.Database.ExecuteSqlRaw($"DELETE FROM {schemaName}.{tableName}");

    context.Database.ExecuteSqlRaw($"DBCC CHECKIDENT ("{schemaName}.

      {tableName}",
RESEED, 1);");

  }

}

На заметку! Метод

ExecuteSqlRaw()
фасадного экземпляра базы данных должен применяться осторожно, чтобы избежать потенциальных атак внедрением в SQL. Теперь, когда вы можете удалять и создавать базу данных и очищать данные, пора заняться методами, которые будут добавлять выборочные данные.

Инициализация базы данных

Вам предстоит построить свою систему заполнения начальными данными, которую можно запускать по требованию. Первым шагом будет создание выборочных данных и добавление в класс SampleDatalnitializer методов для загрузки выборочных данных в базу.

Создание выборочных данных

Добавьте в каталог

Initialization
новый файл по имени
SampleData.cs
. Сделайте его открытым и статическим и поместите в него следующие операторы
using
:

using System.Collections.Generic;

using AutoLot.Dal.Entities;

using AutoLot.Dal.Entities.Owned;

namespace AutoLot.Dal.Initialization

{

  public static class SampleData

  {

  }

}

Класс

SampleData
содержит пять статических методов, которые создают выборочные данные:

{

  new() {Id = 1, PersonalInformation = new() {FirstName = "Dave",

                                              LastName = "Brenner"}},

  new() {Id = 2, PersonalInformation = new() {FirstName = "Matt",

                                              LastName = "Walton"}},

  new() {Id = 3, PersonalInformation = new() {FirstName = "Steve",

                                              LastName = "Hagen"}},

  new() {Id = 4, PersonalInformation = new() {FirstName = "Pat",

                                              LastName = "Walton"}},

  new() {Id = 5, PersonalInformation = new() {FirstName = "Bad",

                                              LastName = "Customer"}},

};

public static List<Make> Makes => new()

{

  new() {Id = 1, Name = "VW"},

  new() {Id = 2, Name = "Ford"},

  new() {Id = 3, Name = "Saab"},

  new() {Id = 4, Name = "Yugo"},

  new() {Id = 5, Name = "BMW"},

  new() {Id = 6, Name = "Pinto"},

};

public static List<Car> Inventory => new()

{

  new() {Id = 1, MakeId = 1, Color = "Black", PetName = "Zippy"},

  new() {Id = 2, MakeId = 2, Color = "Rust", PetName = "Rusty"},

  new() {Id = 3, MakeId = 3, Color = "Black", PetName = "Mel"},

  new() {Id = 4, MakeId = 4, Color = "Yellow", PetName = "Clunker"},

  new() {Id = 5, MakeId = 5, Color = "Black", PetName = "Bimmer"},

Перейти на страницу:

Троелсен Эндрю читать все книги автора по порядку

Троелсен Эндрю - на сайте онлайн книг books-read.com Вы можете читать полные версии книг автора в одном месте.


Язык программирования C#9 и платформа .NET5 отзывы

Отзывы читателей о книге Язык программирования C#9 и платформа .NET5, автор: Троелсен Эндрю. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор books-read.com


Прокомментировать
Подтвердите что вы не робот:*