EF core 2 讀取MS-SQL View

  • 17
  • 0

EF CORE 2.x 不支援無索引鍵實體類型
那如果要讀VIEW怎麼辦?

GOOGLE就只有找到toView、HasNoKey等關鍵字,
但只能在EF 3.x後才可使用

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder
        .Entity<BlogPostsCount>(
            eb =>
            {
                eb.HasNoKey();
                eb.ToView("View_BlogPostCounts");
                eb.Property(v => v.BlogName).HasColumnName("Name");
            });
}

這讓core 2.2的我想升級了,
但升級到3.0要改的東西可不少,需從長計議(詳黑暗大的文章:ASP.NET Core 2.2 升級 3.1 經驗一則

直到找到這文章資料點 - EF Core 2.1 查詢類型
原來可以寫成這樣,Entity改為Query,結案!

modelBuilder.Query<AuthorArticleCount>()
            .HasOne<Author>()
            .WithOne();

但依下圖所述,升級是不可避免的了
2.2版早在2019年底就過期了。。。XD