2014-06-14 2 views
1

Visual Studio 2012를 통해 웹 서비스를 실행할 때 올바르게 작동하지만 IIS에서 프로그램을 실행할 때마다 이와 같은 오류가 발생합니다.공급자가 IIS의 로컬 컴퓨터에 등록되지 않았습니다

System.InvalidOperationException: The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine. 
     at System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper) 
     at System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) 
     at System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) 
     at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions) 
     at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) 
     at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) 
     at System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) 
     at System.Data.OleDb.OleDbConnection.Open() 
     at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) 
     at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) 
     at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) 
     at System.Web.UI.WebControls.SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) 
     at System.Web.UI.WebControls.SqlDataSource.Select(DataSourceSelectArguments arguments) 

은 또한, 내 코드가 연결 문자열을 포함 doesnot 있도록 내가 액세스 데이터 소스를 사용하여 내 코드 인 OleDB 연결을 사용하지 말아.

이 문제를 어떻게 해결할 수 있습니까? 미리 감사드립니다.

+1

, X86로 설정하려고 true로 설정 32 비트 응용 프로그램을 사용합니다. – AVG

답변

0

내 문제가 해결되었습니다.

ISS 관리자 -> 응용 프로그램 풀을 클릭 -> 오른쪽 응용 프로그램을 클릭 -> 고급 설정 -> 대상 CPU가 86이 아닌 경우

관련 문제