Задать вопрос
@Smilleey

Как использовать динамичный DbSet в Entity Framework?

Добрый день. Подскажите, пожалуйста, как выбрать DbSet в зависимости от переменной типа string? Что имеется вкратце:
public class DataContext : DbContext
    {
        public DataContext() : base("myDb") { }
        public DbSet<User> Users { get; set; }

        public DbSet<Entry> RurEntries { get; set; }
        public DbSet<Entry> UsdEntries { get; set; }
        public DbSet<Entry> EurEntries { get; set; }
    }


Имеется по таблице для каждой из валют:RUR,USD,EUR, по полям все таблицы идентичны.
Имеется переменная типа string CurrentCurrency, которая принимает значение одной из валют.
Хотелось бы чтобы в зависимости от CurrentCurrency использовался один из DbSet'ов.
Заранее спасибо за совет.
  • Вопрос задан
  • 543 просмотра
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 1
KMaxI
@KMaxI
Руководитель группы программистов
Нужно определить это в методе OnModelCreating класса
protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
           string table = "USD" //Здесь сделать выбор строки-имени таблицы по нужному параметру
           modelBuilder.Entity<Entry>().ToTable(table);

            base.OnModelCreating(modelBuilder);
        }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы