gpt4 book ai didi

c# - EF 代码优先 : Mapping nontable objects with Fluent API

转载 作者:太空狗 更新时间:2023-10-29 19:39:45 25 4
gpt4 key购买 nike

我应该如何使用流畅的 API 在 EF Code First 中映射我的显着对象,例如 View 、StoredProcedure 等。

最佳答案

在代码优先中尚不支持映射到存储过程和 View 。这些是 Julia Lerman 的编程 Entity Framework :Code First 中的一些解决方法。

映射到可更新 View

modelBuilder.Entity<MyEntity>().ToTable("MY_VIEW")

View 列名称应与实体字段名称相同,并且您 可以使用 Entity Framework 来插入、更新和删除数据 以及选择它。 只是对 Code First 撒谎并告诉 View 作为表

使用 View 填充对象

var myEntity = dbContext.MyEntity.SqlQuery("SELECT * FROM dbo.MY_VIEW")

View 列名称应与实体字段名称相同,并且您仍然可以获得 DbContext 功能,例如更改跟踪、延迟加载。

使用 View 填充非模型对象

var myNonModel = dbContext.Database.SqlQuery("SELECT * FROM dbo.MY_VIEW")

View 列名称应与实体字段名称相同。

使用存储过程

使用 View 的相同技术。

var myEntity = dbContext.MyEntity.SqlQuery("dbo.StoredProcedureName @p0 @p1", myParam1, myParam2)

关于c# - EF 代码优先 : Mapping nontable objects with Fluent API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8939483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com