2011-01-28 3 views
0

J'essaie d'exécuter un exemple LINQ2Entities (connecteur MySQL 6.3.6) sur Mono 2.8.2 (compilé à partir de la source, Ubuntu 10.10). Je me l'erreur suivante:LINQ2Entities avec MySQL sur Mono

$mono L2EMySQL.exe 
Could not load file or assembly 'System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. 

Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. 
File name: 'System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 

que je fais quelque chose de mal ou est-ce Mono qui ne supporte pas LINQ2Entities? Si oui, y a-t-il un plan pour le soutenir?

Répondre

3

Mono ne fournit pas une implémentation de Entity Framework, et (actuellement) n'a pas l'intention de l'implémenter dans un futur proche, en raison de l'abondance de frameworks ORM de haute qualité et multiplateforme déjà existants pour le CLR. . NHibernate et LINQ to SQL, par exemple.

(Ce n'est pas la spéculation et a été entendue dans #mono en provenance d'un des membres de l'équipe Mono.)


Mise à jour 03/10/2012: Microsoft a publié EF sous la licence Apache 2.0 (source), et le projet Mono le regroupe à partir de la version 2.11.3 (qui est une version alpha au moment de la rédaction de ce document).

+0

J'ai ajouté un couple à ma réponse - NHibernate étant l'autre qui me vient immédiatement à l'esprit. Il y en a d'autres, mais je ne peux pas penser à eux du haut de ma tête. – cdhowie

+0

L'implémentation Linq-to-SQL fournie avec Mono prend en charge SQL Server, ainsi que MySQL, PostgreSQL et plusieurs autres bases de données. Ce n'est pas une réponse obsolète; la position du projet Mono sur EF n'a pas changé. – cdhowie

+0

Ah, c'est pourquoi - cela a changé récemment. MS semble avoir publié EF sous une licence open-source, et il sera livré avec Mono 2.11.3. (Pas pour le moment, 2.11.3 est une version alpha de Mono, donc cette réponse n'est pas encore obsolète, mais le sera bientôt.) – cdhowie