Oracle与EntityFramework搭配使用问题

1、使用Code First时,出现“The model backing the ‘xxxxxx’ context has changed since the database was created. Consider using Code First Migrations to update the database ?”
实体的数据类型与数据库类型不一致。如Oracle的Varchar2类型需要设置为this.Property(u => u.字属性名).HasColumnName(“字段名”).IsUnicode(false).HasMaxLength(字段长度),需要注意。

2、数据库有数据,出现查询结果返回空,当使用了Database.SetInitializer(new DropCreateDatabaseAlways()),可以查看数据库是否有新创建的表。当数据库字段与实体属性的数据不一致时,EF会创建新表覆盖掉原来的表结构。
Oracle与EntityFramework特别注意字段名与实体属性名称与类型。

<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>

替换成

<defaultConnectionFactory 
      type="Oracle.ManagedDataAccess.EntityFramework.OracleConnectionFactory, Oracle.ManagedDataAccess.EntityFramework, Version=6.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值