我用实体框架创建了一个实体对象,并在Silverlight中与RIA服务框架一起使用。
有问题的实体有两个EntityCollection,它们包含在发送给客户端的IQueriable中。
实体如下所示:

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

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

域服务方法包括两个集合,使用Include as this:
 [Query]
 public IQueryable<Ad> GetAds()
 {
      return this.ObjectContext.Ad.Include("PublishingDates").Include("Notice");
 }

在客户端,当调用服务并返回结果时,引发了以下异常:“对象必须实现IConvertible”。
如果只包含一个EntityCollection,那么一切都可以正常工作。如果两者都是,则引发前面提到的异常。
[编辑]
我使用MySQL和MySQL Net Connector版本6.3.5。作为数据库。

最佳答案

我认为这是网络连接器中的一个错误,这里报告了一个非常类似的错误http://bugs.mysql.com/bug.php?id=55349
编辑:
我不确定这是否适用于您的具体情况,但对我来说,最新的社区服务器(5.5.9)工作得更好。注意,这是db not.net连接器,它似乎与我得到的错误无关。

关于mysql - 对RIA服务中的EntityCollection中的许多EntityCollection引发“implement IConvertible”异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4404571/

10-13 05:16