C# system.data列';不变量名称';被约束为唯一的
我正在使用FirebirdSqlProvider 4.8.1.1和EntityFramework 6.0 当我尝试使用EntityFramework时,我得到了异常C# system.data列';不变量名称';被约束为唯一的,c#,entity-framework,firebird,C#,Entity Framework,Firebird,我正在使用FirebirdSqlProvider 4.8.1.1和EntityFramework 6.0 当我尝试使用EntityFramework时,我得到了异常system.data列“invariantname”被约束为唯一的。 我的app.config文件: <entityFramework> <defaultConnectionFactory type="FirebirdSql.Data.EntityFramework6.FbConnectionFactory
system.data列“invariantname”被约束为唯一的。
我的app.config
文件:
<entityFramework>
<defaultConnectionFactory type="FirebirdSql.Data.EntityFramework6.FbConnectionFactory, EntityFramework.Firebird" />
<providers>
<provider invariantName="FirebirdSql.Data.FirebirdClient" type="FirebirdSql.Data.EntityFramework6.FbProviderServices, EntityFramework.Firebird" />
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<remove invariant="FirebirdSql.Data.FirebirdClient" />
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient" />
</DbProviderFactories>
</system.data>
我的machine.confgi
文件中只有一个DbProviderFactorys实体。
如何修复它 对我来说,有一个重复的IBM DB2提供程序
我必须导航到:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG
然后打开machine.config文件并删除重复的行
这两条线是:
如果错误是关于不变式名称
,那么我认为问题在于不变式名称
,而不是不变式
。换句话说:您正在查看
,但错误提示您应该查看
。您是否也查看了您的machine.config?对不起。我正在检查machine.config文件的32位版本。我在64位1中有两个Firebird ProviderFactory。
<add name="IBM DB2 for i .NET Provider" invariant="IBM.Data.DB2.iSeries" description=".NET Framework Data Provider for IBM i" type="IBM.Data.DB2.iSeries.iDB2Factory, IBM.Data.DB2.iSeries, Version=12.0.0.0, Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26"/>