sql >> Database teknologi >  >> NoSQL >> MongoDB

Kan ikke løse Assembly- eller Windows-metadatafilen 'System.Data.dll'

Ligner system.data er ikke tilgængelig for metro-apps. Den generelle konsensus ser ud til at være, at du bliver nødt til at oprette et mellemtrin (ved hjælp af en teknologi såsom WCF) for at tillade din metro-app at kommunikere med databasen.

Referencer:

Selvom disse links har SQL i titlen, adresserer de virkelig tilslutning af metro-apps direkte til enhver database.

Her er lidt fra et svar på et af ovenstående links:

Opfølgende spørgsmål i kommentar:

Da jeg prøvede dette, kunne jeg henvise til MongoDB.Bson.dll af sig selv og projektet bygger, men en gang henviste jeg til MongoDB.Driver.dll Jeg fik samme besked som dig.

Det ser ud til, at sql-driveren og mongodb-driveren begge kræver System.Data.dll , som du kunne referere direkte i en standard winforms/wpf-app (men nok ikke burde), men som du ikke kan referere direkte i en metro-app.

Jeg vil sige, at det er nødvendigt at have adgang til System.Data hvis du vil bruge MongoDB. Så du bliver nødt til at oprette et separat projekt, der refererer til MongoDB-driveren og faktisk udfører forbindelserne til databasen, og gøre dette projekt tilgængeligt for din metro-app via WCF-opkald eller en webtjeneste. Du skal bare have noget mellem din metro-app og databasen, for du kan ikke oprette forbindelse direkte til den.

Jeg ved, at det ser ud til at gøre tingene mere komplicerede, især hvis du bare prøver at lege, men det er tilsyneladende en designbeslutning, som Microsoft har truffet vedrørende deres metro-apps.



  1. Data.model.updateItem er ikke en funktion TypeError:Data.model.updateItem er ikke en funktion

  2. Kan ikke montere azure-filshares som mongodb-volumen i azure container-forekomster

  3. Mongo Database gemmer data fra Map

  4. Golang / MGO -- panik:ingen tilgængelige servere