Я пытаюсь установить «Image» по умолчанию для свойств кода в моем DBContext, и мне нужно использовать инъекцию зависимостей, чтобы добавить «IHostingEnvironment», чтобы получить корневой путь. Как я могу добавить 'IHostingEnvironment' к своему 'OnModelCreating ()', чтобы получить доступ к пути для поиска моих изображений в каталогах и установить их в качестве значения по умолчанию для определенного свойства моего класса базы данных?
Я использую Asp.net core 2.2 и не могу найти ответ
protected override void OnModelCreating(ModelBuilder builder,IFormFile img)
{
base.OnModelCreating(builder);
builder.Entity<ApplicationUser>(entity =>
{
...
byte[] b = new byte[img.Length];
img.OpenReadStream().Read(b, 0, b.Length);
p.img = b;
entity.Property(b => b.UserImage).HasDefaultValue(b);
...
});
}
Я хочу, чтобы в любое время, когда новый пользователь регистрируется на моем веб-сайте, система автоматически устанавливает для него (и случайное) изображение по умолчанию и сохраняет его в базе данных без повторения кодов чтения и записи изображений в массивах. что-то вроде кода, который я написал выше.
Всего 1 ответ
Если ваша цель - определить значение по умолчанию для некоторого столбца в вашей базе данных, наилучший подход будет установлен в конструкторе класса, так что когда ваше приложение создаст объект этого класса, у этого уже будет значение по умолчанию.