.net - 实体框架 - 将布尔值映射到 VARCHAR2(1)
问题描述
我正在使用 Entity Framework 6 和 ASP.NET Core 2.1。
我在 SO 和其他地方看到了几个示例,用于将数据库中的 NUMBER(1) 列映射到实体框架中的布尔值。他们通常涉及这样的事情
<oracle.manageddataaccess.client>
<version number="*">
<edmMappings>
<edmMapping dataType="number">
<add name="bool" precision="1"/>
</edmMapping>
</edmMappings>
</version>
</oracle.manageddataaccess.client>
被添加到 web.config 中。
所有示例都用于将数字 DB 值映射到布尔值。我们使用的数据库在每一列中都有一个 ACTIVE_IND 列,即 VARCHAR2(1)。我们将其用作“1” = true,“0” = false。
我尝试的每个值<edmMapping dataType="***">
,我都会收到一个错误,例如DataType 'varchar2' is invalid
. 我试过 varchar、varchar2、string 等。
我的问题 - 有没有办法映射所有表,以便在我的 .NET 代码中,属性是布尔值,但在数据库中,它是 VARCHAR2?
解决方案
在 EF 6 中没有一流的方法可以做到这一点。
EF Core 通过Value Conversions支持这一点,Oracle 已经发布了ODP.NET Core。但是,EF Core 支持尚未发布。
推荐阅读
- python-3.x - 如何在 django 上为银行访客制作电子队列?
- javascript - 删除 jquery 中的相似性
- java - 无法使用 OAuth 2 通过 Jakarta Mail 连接到 Office 365 SMTP 服务器
- multithreading - Quarkus 应用程序的 @Async 等效项是什么?
- r - 在将数据导入闪亮应用程序时创建变量,管理接收到的数据
- tabulator - 有没有办法使用ajax在制表器中将第一行设置为列标题?
- javascript - Reactjs 创建边框,而纯 html 没有
- r - UseMethod(“cld”)中的错误:没有适用于“cld”的适用方法应用于类“c('emm_list','list')”的对象
- ruby-on-rails - 在 Rails 中将设计编辑渲染为局部视图
- javascript - 如何从 UrlFetchApp.fetchAll 中捕获错误?