EntityFramework Core 2.1:配置DbContext之后是否访问和更改选项?

时间:2018-06-20 11:51:22

标签: c# entity-framework ef-core-2.1

在EntityFramework Core中,您可以使用DbContextOptionsBuilder添加不同的选项。

以后是否可以访问为DbContext设置的选项?

就我而言,我想知道是否使用代理延迟加载(通过使用Microsoft.EntityFrameworkCore.Proxies软件包添加了功能)。

另外,在创建和配置DbContext之后是否可以更改这些配置的选项?

1 个答案:

答案 0 :(得分:0)

深入研究EFCore 2.1的当前代码后,我发现了一些东西。

如果您在DbContextOptionsBuilder中保留对DbContext的引用,则可以访问扩展名和相关值。示例:

context.OptionsBuilder.Options.FindExtension<ProxiesOptionsExtension>()?.UseLazyLoadingProxies;

,但EFCore团队不推荐。使用ProxiesOptionsExtension的注释为:

  

此API支持Entity Framework Core基础结构,但不支持   旨在直接从您的代码中使用。该API可能会更改或   在将来的版本中删除。

注意这一点。

我实现了它,但是要过几天才能尝试并确定它可以像我预期的那样工作。 (对于我的情况,我必须在它周围添加很多其他内容。)

我会及时通知你。