Ressemble à system.data
n'est pas disponible pour les applications Metro. Le consensus général semble être que vous devrez créer un niveau "intermédiaire" intermédiaire (en utilisant une technologie telle que WCF) pour permettre à votre application métropolitaine de communiquer avec la base de données.
Références :
- Récupération de données à partir de SQL en utilisant l'application C# Metro
- Rendre System.Data disponible pour les applications de style Metro
- WinRT System.Data - Se connecter à SQL
Bien que ces liens aient SQL dans le titre, ils traitent vraiment de la connexion directe des applications métropolitaines à n'importe quelle base de données.
Voici un extrait d'une réponse sur l'un des liens ci-dessus :
Question complémentaire en commentaire :
Quand j'ai essayé ceci, je pouvais référencer MongoDB.Bson.dll
par lui-même et le projet se construit, mais une fois que j'ai référencé MongoDB.Driver.dll
J'ai reçu le même message que toi.
Il semblerait que le pilote sql et le pilote mongodb nécessitent tous deux System.Data.dll
, que vous pourriez référencer directement dans une application winforms/wpf standard (mais que vous ne devriez probablement pas), mais que vous ne pouvez pas référencer directement dans une application métropolitaine.
Je dirais qu'il est nécessaire d'avoir accès à System.Data
si vous souhaitez utiliser MongoDB. Vous devrez donc créer un projet distinct qui référence le pilote MongoDB et effectue réellement les connexions à la base de données, et rendre ce projet accessible à votre application Metro via des appels WCF ou un service Web. Vous avez juste besoin de quelque chose entre votre application Metro et la base de données, car vous ne pouvez pas vous y connecter directement.
Je sais que cela semble rendre les choses plus compliquées, surtout si vous essayez juste de vous amuser, mais c'est apparemment une décision de conception prise par Microsoft concernant ses applications métro.