При каждой новой миграции Bogus генерирует (обновляет) новые данные, как это убрать?

Bogus - это библиотека генерации фальшивых данных, которая может быть полезна при разработке и тестировании программного обеспечения. Однако, если вы хотите остановить генерацию новых данных при каждой новой миграции, вы можете сделать это, изменив код использующий Bogus.

В своей программе, вы, вероятно, используете фабрику объектов Bogus для генерации фейковых данных. Обычно, каждый раз при вызове фабрики, она генерирует новые данные. Если вы хотите избежать этого и хотите получать одни и те же данные при каждом вызове миграции, вы можете использовать фиксированный генератор Bogus.

Для этого, вы должны создать экземпляр фиксированного генератора Bogus в вашем коде. Фиксированный генератор Bogus генерирует те же самые данные при каждом вызове, что позволяет вам соответствовать требуемым ожиданиям.

Вот пример кода, который показывает, как использовать фиксированный генератор Bogus в C#:

using Bogus;

public class MyDataGenerator
{
    private Randomizer _randomizer;
    private Faker _faker;

    public MyDataGenerator()
    {
        _randomizer = new Randomizer(); // Создаем экземпляр обычного генератора Bogus
        _faker = new Faker(); // Создаем экземпляр фабрики объектов Bogus
    }

    public void GenerateData()
    {
        _faker.Random = new Random(_randomizer.Seed); // Используем seed обычного генератора Bogus для фиксации генерации данных
        // Здесь вы можете генерировать ваши данные с использованием фабрики объектов Bogus
        var name = _faker.Name.FirstName();
        var email = _faker.Internet.Email();
        var address = _faker.Address.FullAddress();
        
        // Продолжайте генерировать необходимые данные
    }
}

В этом примере мы создаем экземпляр обычного генератора Bogus и экземпляр фабрики объектов Bogus. Затем мы используем seed обычного генератора Bogus для создания фиксированного генератора и устанавливаем его во фрабрику. Теперь каждый раз при вызове метода GenerateData(), он будет возвращать один и тот же результат.

Это позволит вам иметь контроль над генерацией данных при каждой новой миграции и избежать обновления данных при каждом новом запуске программы.