Есть ли способ взять First () из таблицы иерархии в Entity Framework Core? - PullRequest
0 голосов
/ 23 марта 2020

Есть ли способ получить доступ к таблице, которая является иерархической?

Entity Framework Core возвращает null из метода First(), таблица НЕ пуста. Я использую SQL Сервер для хранения таблицы.

public class TestProjectEFDbContext : DbContext
{
    private const string connectionString = @"data source=DESKTOP-I2JBLKP; Initial Catalog=TestProjectEF;  Trusted_Connection=True; ";

    public TestProjectEFDbContext() { }
    public TestProjectEFDbContext(DbContextOptions options) : base(options) { }

    public DbSet<University> Universities { get; set; }
    public DbSet<MedicineUniversity> MedicineUniversities { get; set; }
    public DbSet<ArtUniversity> ArtUniversities { get; set; }
    public DbSet<TechUniveristy> TechUniveristies { get; set; }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlServer(connectionString);
    }
} 

var FirstUniversity = testProjectEFDbContext.Universities.First(); // throws an error

1 Ответ

1 голос
/ 23 марта 2020

InvalidOperationException: Sequence contains no elements Когда выяснилось, что в отображенной таблице нет записей.

enter image description here

И оно исчезает при использовании FirstOrDefault() метод расширения.

Итак, дважды проверьте базу данных и таблицу, которые вы используете в строке подключения, и вы проверили, есть ли записи.

Кроме того, остерегайтесь атрибута таблицы: [Table(string name, Properties:[Schema = string])

...