Pessoal,
Estou desenvolvendo um WebService (C#). Esse WS vai fazer importação e exportação de dados entre o SQLServer e arquivos (Texto, XML e Tabelas.dbf). Estava tudo funcionando muito bem até entrar a figura das Tabelas do dBase IV (*.dbf), para fazer uma integração com um sistema legado em DOS do governo.
Para Gerar a tabela DBF e manipular os dados, eu estava usando a classe System.Data.OleDb.OleDbConnection e usando o Provider=Microsoft.Jet.OLEDB.4.0 na String de Conexão.
Depois de muito quebrar a cabeça com a mensagem "O provedor 'Microsoft.Jet.OLEDB.4.0' não está registrado na máquina local", descobri (pelo que pude entender) que não existe um driver na arquitetura x64 para este provider, e que eu teria que compilar a DLL com PlataformTarget=x86 (e passou a funcionar numa boa).
O problema agora é que ao publicar a DLL no IIS 7.5.7600.x de um servidor Windows Server 2008 R2 SP1 x64 com, estou tomando o seguinte erro:
Descrição: Ocorreu uma exceção não tratada durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código.
Detalhes da Exceção: System.BadImageFormatException: Não foi possível carregar arquivo ou assembly 'MP.Servico' ou uma de suas dependências. Foi feita uma tentativa de se carregar um programa com um formato incorreto.
Alguém já passou por isso? Tem como mudar o IIS para funcionar em 32 bits (em um SO 64)? Alguma solução alternativa?
Att.