【发布时间】:2009-05-05 13:50:32
【问题描述】:
这行代码
DbProviderFactory factory = DbProviderFactories.GetFactory("Microsoft.SqlServerCe.Client");
抛出此异常
System.Configuration.ConfigurationErrorsException: 未能找到或加载注册的 .Net Framework 数据提供者。
虽然我的 machine.config 文件包含以下部分
<system.data>
<DbProviderFactories>
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle" type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient" description=".Net Framework Data Provider for SqlServer" type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="SQL Server CE Data Provider" invariant="Microsoft.SqlServerCe.Client" description=".NET Framework Data Provider for Microsoft SQL Server 2005 Compact Edition" type="Microsoft.SqlServerCe.Client.SqlCeClientFactory, Microsoft.SqlServerCe.Client, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</DbProviderFactories>
</system.data>
我错过了什么吗?我应该看看别的地方吗?像DbProviderFactory factory = SqlCeProviderFactory.Instance 这样的代码可以正常工作。
【问题讨论】:
-
我没有 Microsoft.* 在 Sql Server Ce 的 machine.config 部分中列出的任何 DLL...我有 System.Data.SqlServerCe v9.0.242.0。跨度>
标签: sql-server ado.net machine.config