在我的项目中,我有一个由 wcf 公开的视图模型 City。
其中一个属性的名称与已经公开的合同规定的名称不同。
因此,我添加了 DataMember 属性并设置 Name 值,如下所示:
<DataContract(Namespace:=ServiceNamespace)> _
Public Class City
private mySelectedTranslation as String
<DataMember(Name:="CityName")> _
Public Property SelectedTranslation() As String
Get
Return mySelectedTranslation
End Get
Set (ByVal value As String)
mySelectedTranslation = value
End Set
End Property
End Class
在我正在使用的测试项目中,服务引用似乎并没有获取 DataMember 属性,而是接收 SelectedTranslation 属性而不是 CityName 属性。
我错过了什么?
更新
我发现当我删除 ServiceContract 的 XmlSerializerFormat(Style:=OperationFormatStyle.Rpc)
设置时,正确使用了 datamember 属性。我在想 RPC XmlSerializer 可能有问题?