最近開發了一個系統,在測試環境上進行部署(win7環境)並測試,沒有發現問題;但是把系統部署到win Server2008R2上之后,部分頁面就報“找不到請求的 .net Framework 數據提供程序。可能沒有安裝。”的錯誤,對服務器進行排查,服務器上的framework版本從2.0、3.5、4.0都進行了安裝,而且開發的系統在使用SQL Server數據庫的時候是可以正常部署的。最后判定是換了數據庫(由SQL Server換成MYSQL)而導致的環境問題或者是配置問題,最后通過查找資料,修改了web.config節點問題得到解決,把MySQL相關的dll添加到web.config下就可以了,具體如下:

1 <system.data> 2 <DbProviderFactories> 3 <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> 4 </DbProviderFactories> 5 </system.data>
其中包含了dll的名稱、版本、PublicKeyToken信息,只要和自己添加的dll相對應就可以了。