在将 linq-to-sql 与 ado.net 数据服务一起使用时,我遇到了一个奇怪的错误。我有一个连接到远程数据库的简单 silverlight 应用程序。我首先添加了 linq-to-sql 类并将一个表拖到设计器上。然后我添加了一个 ADO.NET 数据服务,更新了 DataService 引用以指向 L2S 数据上下文。
编译没有问题。
当我在 IE 中打开服务时,我立即收到错误消息,因此我将以下属性添加到数据服务:
[System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)]
这会显示详细的错误消息:
异常消息是“在数据上下文类型“DataClasses1DataContext”上,有一个顶级 IQueryable 属性“table1”,其元素类型不是实体类型。确保 IQueryable 属性是实体类型或在数据上下文类型上指定 IgnoreProperties 属性以忽略此属性
我在 L2S 设计器中使用的任何数据库表都会发生这种情况!
这是什么错误,为什么我会得到它?