2

J'ai un objet Entity créé avec Entity Framework et utilisé dans Silverlight avec l'infrastructure de services RIA.Pour plusieurs entités EntityCollections dans l'entité déclenchez l'exception "implement IConvertible" dans les services RIA

L'entité en question a deux EntityCollections qui sont inclus dans l'IQueriable envoyé au client.

L'entité ressemble à ceci:

public class Ad:Entity 
{ 
    [Include] 
    public EntityCollection<PublishingDates> PublishingDates {get;set;} 

    [Include] 
    public EntityCollection<Notice> Notice {get;set;} 
} 

La méthode de service de domaine inclut à la fois la collecte en utilisant Inclure comme ceci:

[Query] 
public IQueryable<Ad> GetAds() 
{ 
     return this.ObjectContext.Ad.Include("PublishingDates").Include("Notice"); 
} 

Du côté client lorsque le service est appelé et le résultat est retourné le L'exception suivante était raise: "L'objet doit implémenter IConvertible".

Si une seule EntityCollection est incluse, tout fonctionne correctement. Si les deux, l'exception mentionnée précédemment est augmenter.

[EDIT]

J'utilise MySQL avec MySQL Net Connector version 6.3.5. comme la base de données.

Répondre

0

J'ai le même problème maintenant. La chose intéressante est que ma requête fonctionne très bien avec une instance Mysql pilotée par Linux mais ne fonctionne pas sous Windows. Peut-être vous réussirez passer à Linux

+0

Tnx pour l'espoir. J'ai trouvé que la requête casse quand j'ai deux références de une à plusieurs dans ma requête. Dans ce cas, une seule référence peut être utilisée sans se bloquer. –

1

Je pense que un bogue dans Net Connector, un bug très similaire a été signalé ici http://bugs.mysql.com/bug.php?id=55349

EDIT:

Je ne suis pas sûr que cela s'applique à votre cas mais pour moi le dernier serveur de communauté (5.5.9) fonctionne beaucoup mieux. Notez que c'est le connecteur db pas .net, qui ne semble pas être impliqué dans les erreurs que j'ai eues.