在PostGres数据库中使用我的API时收到此错误消息。
“具有不变名称'Devart.Data.PostgreSql'的ADO.NET提供程序未在机器或应用程序配置文件中注册,或者无法加载。有关详细信息,请参阅内部异常。”
我觉得我需要在我的登台和生产服务器上安装Devart产品来修复错误。这样对吗?如果这是正确的,我想了解为什么简单地复制或发布Devart dll是不够的?通常它应该足够了。
在错误消息中,我可以读取“未注册”。注册是什么意思?它是在confi文件中重新注册还是我需要在我的staging和produciton机器上进行特定的操作?
您应该在* .config文件的DbProviderFactories部分中注册配置信息:
<system.data>
<DbProviderFactories>
<remove invariant="Devart.Data.PostgreSql" />
<add name="dotConnect for PostgreSQL" invariant="Devart.Data.PostgreSql" description="Devart dotConnect for PostgreSQL" type="Devart.Data.PostgreSql.PgSqlProviderFactory, Devart.Data.PostgreSql, Version=7.12.1328.0, Culture=neutral, PublicKeyToken=09af7300eec23701" />
</DbProviderFactories>
</system.data>
将7.12.1328.0替换为您的实际版本。
请参阅https://www.devart.com/dotconnect/postgresql/docs/?deployment.html。