是否可以在EFCore中将数据库TinyInt映射到.Net布尔值?

时间:2017-11-14 09:28:18

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

在搜索了几个小时之后,我找到了一些关于如何" Map"数据库TinyInt到.Net布尔值。 一个答案是改变ColumnType to Bit,而另一个答案是使用Mapping Attributes,但两者都会因为巨大的努力而安静下来。我的Databse得到了大约200多张具有相应模型和bool属性的表。

我正在寻找一种方法来覆盖EFCore的默认映射,以便将boolean映射到tinyint。

为什么我在做或需要这个?

到目前为止,我们使用了Telerik OpenAccess并实现了许多服务。既然今后这不会成为支持者,我们希望切换到EFCore。因为有许多服务用于不同的应用程序,但都使用相同的数据库,我需要逐位替换OpenAccess,所以只需将所有DB-Columns从TinyInt(由OpenAccess用于布尔值)更改为位(EFCore默认值)赢得'工作。添加" Mapping-Attributes"的第二种解决方案;对于每个布尔值,由于大量的对象,这将是一项巨大的努力。

只需将类型映射从EFCore或任何类似的地图切换到我认为最好或最简单的解决方案。

如果有人知道我的问题的另一个解决方案然后上面提到的两个,那将是很好的。

1 个答案:

答案 0 :(得分:1)

如果有人尝试使用EF或EF Core同时使用Telerik OpenAccess / DataAcces,您只需将数据库中的所有tinyint列更改为位。 OpenAcces可以毫无问题地工作,即使colums是位而不是默认的tinyint,而且Ef Core将照常工作。

即使这不是我的问题的令人满意的答案,这是一个可能的解决方法或解决方案,使两者都有效。