我的ASP.NET MVC应用程序出现问题,该应用程序使用SQLSERVER 2012 Expresss来保证安全性,并且这与我在这种情况下未使用的Firebird安装有冲突。得到这样的例外:
为system.data创建配置节处理程序时发生错误:列'InvariantName'被限制为唯一。 值'FirebirdSql.Data.FirebirdClient'已存在。
我试图在我的web.config中输入:
<remove invariant="FirebirdSql.Data.FirebirdClient"/>
但这不起作用,我终于做了什么我从machine.config中删除了这个firebird条目:
<system.data>
<DbProviderFactories>
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient, Version=3.0.2.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c"/><add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient, Version=3.0.2.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c"/></DbProviderFactories>
并且结果很好,但这并不是理想的解决方案,因为我有时候还需要使用firebird。无论如何要暂时在app web,config中禁用此条目?另外,为什么我要开始这样的冲突呢? 感谢
答案 0 :(得分:3)
你在machine.config中有两次相同的记录。删除一个,你会没事的。
答案 1 :(得分:0)