2014-01-16 2 views
3

다음 코드는 로컬 내 컴퓨터에서 올바르게 작동합니다. 그러나 Azure 원격 웹 사이트에 배포하면 다음과 같은 오류 메시지가 나타납니다. 나는 SO 답안과 구글 검색 결과를 살펴 봤지만, 내 로컬 컴퓨터에 무엇을 설치해야하는지 아직 명확하지 않다. 그래서 코드를 Azure로 푸시하면 오류가 사라질 것이다.Windows Azure 원격 사이트 'Microsoft.ACE.OLEDB.12.0'공급자가 로컬 컴퓨터에 등록되지 않았습니다.

오류 메시지 :

'Microsoft.ACE.OLEDB.12.0'공급자는 로컬 컴퓨터에 등록되어 있지 않습니다.

내 코드 ..

string filename = Server.MapPath("/") + "MyExcelDataFile.xlsx"; 
string connectionString = String.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 8.0;HDR=YES\";", filename); 
string query = String.Format("SELECT * from [{0}$]", "myRange1"); 
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(query, connectionString); 
DataSet dataSet = new DataSet(); 
dataAdapter.Fill(dataSet); 
DataTable YourTable = dataSet.Tables[0]; 
+0

대상 서버에이 구성 요소를 설치하십시오. - http://www.microsoft.com/korea/ en /us/download/details.aspx?id=13255 – ramiramilu

답변

3

당신이 푸른 VM을 사용하는 경우, 바로 마이크로 소프트의 웹 사이트에서 OLE DB 드라이버를 설치합니다.

그러나 웹 역할을 사용하는 경우 Excel OLE 드라이버가 설치되어 있지 않습니다.

Excel 문서를 대신 쿼리하려면 EPPlus과 같은 타사 구성 요소를 사용하십시오.

+0

Thanks Cam !!!!! EPPLUS는 훌륭하게 작동합니다 !!!! –

+0

다른 방법이 있습니까? 우리가 epplus를 사용하고 싶지 않다면 –

2

나는 이것이 OleDb 드라이버가 하늘빛 가상 머신에는 존재하지 않지만 귀하의 지역 개발 기계에는 존재하기 때문에 이것이라고 생각합니다.

Windows Azure 가상 컴퓨터를 사용하는 경우 Microsoft.ACE.OLEDB.12.0 드라이버 설치를 확인하고 하늘색 컴퓨터에서 RDP를 통해 복사 및 설치 한 다음 해결해야합니다.

Windows Azure 클라우드 서비스를 사용하는 경우 시작/작업 프로세스를 통해이 드라이버 (COM 추측)를 설치/등록하는 방법을 찾아야 할 수 있습니다. 또한 드라이버가 x64를 지원하는지 확인해야합니다.

Windows Azure 웹 사이트를 사용하는 경우 사용중인 웹 사이트 계획 (무료, 공유 된 표준)에 관계없이 추가 구성 요소를 설치/등록 할 수 있다고 생각하지 않으므로 문제가 될 수 있습니다.

희망이 도움이됩니다.

+0

안녕 숀, 나는 Windows Azure 웹 사이트 (전체 구독)를 사용하고 있습니다. 원하는 드라이버를 설치할 수있는 방법이 있습니까? –

+0

나는 할 수 있다고 생각하지 않는다. 클라우드 서비스를 사용하도록 변경해야 할 수도 있습니다. –

+0

감사 Shaun !! 피드백을 감사하십시오. –

관련 문제