如何将EF-core模型映射到外部表



我使用下面的脚本定义了一个外部表:

create external table [dbo].[MyExternalTable]
( [MyExternalTableId] [tinyint] not null,
[Status] [nvarchar](50) not null,
[Description] [nvarchar](200) null)
with
( 
data_source = MyElasticDBQueryDataSrc,
SCHEMA_NAME = 'dbo',           -- external table schema
OBJECT_NAME = 'MyExternalTable'       -- name of table in external database
);
go

如何将这个外部表映射到EF-Core模型?

我在下面的DbContext中尝试:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<MyExternalTable>()
.ToView("MyExternalTable");
}

但是当我使用它时,它会抛出异常无效对象名称' myexternaltable '

public async Task TryGetBillPayment()
{
var results =
await _dbContext
.MyExternalTable
.FromSqlRaw("SELECT * FROM MyExternalTable")
.ToListAsync();
}

但是如果我直接从SQL Server Management Studio执行下面的查询,它可以工作:

select * from MyExternalTable

我认为您需要将这些外部表作为一个单独的DB上下文直接指向另一个数据库。

相关内容

  • 没有找到相关文章

最新更新