MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Não é possível resolver o arquivo Assembly ou Windows Metadata 'System.Data.dll'


Parece system.data não está disponível para aplicativos metropolitanos. O consenso geral parece ser que você terá que criar uma camada intermediária de "intermediário" (usando uma tecnologia como WCF) para permitir que seu aplicativo metropolitano se comunique com o banco de dados.

Referências:

Embora esses links tenham SQL no título, eles realmente abordam a conexão de aplicativos metropolitanos diretamente a qualquer banco de dados.

Aqui está um pouco de uma resposta em um dos links acima:

Pergunta complementar no comentário:

Quando tentei isso, pude fazer referência a MongoDB.Bson.dll por si só e o projeto é compilado, mas uma vez eu referi MongoDB.Driver.dll Recebi a mesma mensagem que você.

Parece que o driver sql e o driver mongodb requerem System.Data.dll , que você pode referenciar diretamente em um aplicativo winforms/wpf padrão (mas provavelmente não deveria), mas que você não pode referenciar diretamente em um aplicativo metro.

Eu diria que é necessário ter acesso a System.Data se você quiser usar o MongoDB. Portanto, você terá que criar um projeto separado que faça referência ao driver MongoDB e realmente execute as conexões com o banco de dados e torne esse projeto acessível ao seu aplicativo metropolitano por meio de chamadas WCF ou um serviço da web. Você só precisa de algo entre seu aplicativo Metro e o banco de dados, porque você não pode se conectar diretamente a ele.

Eu sei que parece tornar as coisas mais complicadas, especialmente se você está apenas tentando brincar, mas aparentemente é uma decisão de design que a Microsoft fez em relação aos seus aplicativos metropolitanos.