如何在ASP Core 2.2中为现有的Oracle数据库生成模型类?

时间:2018-12-23 10:17:34

标签: oracle asp.net-core asp.net-core-mvc

我正在尝试使asp core 2.2中的数据库成为第一种方法。

我的问题是我找不到从现有的oracle数据库生成模型类的任何有用信息,无论如何我都不想这样做,但是我的所有尝试都失败了,因此任何帮助将不胜感激

编辑: 我看到答案中总是提到EF Core,并且它没有提供程序,我没有坚持下去,我真的要求任何方法来执行我想要的操作,因此,如果Dapper,NHibernate或其他方法存在我很乐意采用这种方法,因为它涵盖了这种方法

编辑1: 我使用了Devart.Data.Oracle.EFCore,它像char一样基于db生成类,但是很遗憾,它是付费的。后来我使用了Dapper,不得不自己创建类

4 个答案:

答案 0 :(得分:1)

市场上有几种工具

修改

目前,Oracle不支持Entity Framework Core。这意味着您需要使用第三方库才能将Entity Framework Core与Oracle一起使用。

Devart具有dotConnect for Oracle数据库驱动程序(适配器),它支持EF Core。

请参阅this link,了解有关Oracle数据库提供商的未来计划

编辑:OP指出仅映射/脚手架就足够了

您可能会考虑使用Entity Framework来搭建模型并手动将其迁移到EF Core。由于两个框架存在一些差异,您可能需要进行一些微调。

答案 1 :(得分:1)

似乎像Oracle is currently conducting a private beta of their EF Core provider.一样,您可以尝试加入测试版,也可以继续等待公开测试版的发布,该测试版将于2018年12月发布(似乎有延迟)。

有关reverse-engineering yor db can be found here的文档。

答案 2 :(得分:0)

尝试使用此提供程序https://github.com/CrazyJson/Citms.EntityFrameworkCore.Oracle 您可以从NuGet解决方案-Citms.EntityFrameworkCore.Oracle

下载它

确保已安装其依赖项: Oracle.ManagedDataAccess.Core(> = 2.18.3) Microsoft.EntityFrameworkCore.Relational(> = 2.2.0)

答案 3 :(得分:0)

对于后来加入的任何人,Oracle最终发布了EF核心Oracle.EntityFrameworkCore的提供程序时,终于由oracle自己解决了。

然后跟随docs,但使用Oracle.EntityFrameworkCore正确的连接字符串