Wcf data services WCF数据服务和便携式图书馆

Wcf data services WCF数据服务和便携式图书馆,wcf-data-services,Wcf Data Services,我正在尝试将WCF数据服务与便携式库中包含的POCO数据模型一起使用。服务器端使用模型没有问题,但在客户端,当提要具体化时,我得到以下错误: “PortableEntities.Customers”类型上名为“Orders”的属性具有“Structural”类型,但应为“Navigation”类型 客户端似乎无法具体化未实现为DataServiceCollection的关系(可移植库无法使用的类型) 有没有办法使用其他ICollection类型,如HashSet或List 以下是我的便携库中的模

我正在尝试将WCF数据服务与便携式库中包含的POCO数据模型一起使用。服务器端使用模型没有问题,但在客户端,当提要具体化时,我得到以下错误:

“PortableEntities.Customers”类型上名为“Orders”的属性具有“Structural”类型,但应为“Navigation”类型

客户端似乎无法具体化未实现为DataServiceCollection的关系(可移植库无法使用的类型)

有没有办法使用其他ICollection类型,如HashSet或List

以下是我的便携库中的模型类(来自Northwind):


你能分享Orders类的定义吗?订单是否具有ID属性或DataServiceKey属性?否则,WCF数据服务会将其视为复杂类型而不是实体类型。添加ID属性或DataServiceKey属性可能会有所帮助。

能否共享Orders类的定义?订单是否具有ID属性或DataServiceKey属性?否则,WCF数据服务会将其视为复杂类型而不是实体类型。添加ID属性或DataServiceKey属性可能会有所帮助。我认为你是对的。由于可移植库的原因,我不能使用DataServiceKey属性,但我可以使用约定。问题是Northwind的表名为Orders,id名为OrderId。根据惯例,我的类应该命名为Order而不是Orders。你能写一个答案让我接受吗?我不能使用DataServiceKey属性,因为有可移植库,但我可以使用约定。问题是Northwind的表名为Orders,id名为OrderId。根据惯例,我的类必须命名为Order而不是Orders。
Partial Public Class Customers
    Public Property ID As String
    Public Property CompanyName As String
    Public Property ContactName As String
    Public Property ContactTitle As String
    Public Property Address As String
    Public Property City As String
    Public Property Region As String
    Public Property PostalCode As String
    Public Property Country As String
    Public Property Phone As String
    Public Property Fax As String

    Public Overridable Property Orders As ICollection(Of Orders) = New HashSet(Of Orders)
    Public Overridable Property CustomerDemographics As ICollection(Of CustomerDemographics) = New HashSet(Of CustomerDemographics)

End Class