wcf - 通过带有私有(private)字段的 wcf 服务发送对象的问题

标签 wcf silverlight-4.0 mvvm

我有课Car

public class Car
{
    private Member _owner;

    public string OwnerName
    {
        get { return _owner.Name; }
    }

    public Car(Member owner)
    {
        _owner = owner;
    }
}

我在 Silverlight 应用程序和 wcf 服务中都使用它

所以,在应用程序中我调用 WCF 服务给我汽车类的实例,但是当我在应用程序中得到它时,我看到 _owner是空的。

我知道它是因为私有(private)而为空的,但是我该如何处理呢?

如果有帮助,我将在我的应用程序中使用此类作为模型(MVVM):/

最佳答案

首先,您的所有属性都没有标记为 DataMembers。该类未标记为 DataContract。如果这是从 WCF 服务返回的,我希望看到:

[Serializable]
[DataContract]
public class Car
{
      private Member _owner;
      [DataMember]
      public string OwnerName
      {
          //getter
          //setter
       }

      etc..
}  

成员(member)必须是私有(private)的吗?可以转化为属性(property)吗?

请记住,[DataMember] 属性既需要 set 也需要 get(以便 WCF 可以读入和读取对象)。

http://msdn.microsoft.com/en-us/library/ms733127.aspx

关于wcf - 通过带有私有(private)字段的 wcf 服务发送对象的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7346486/

相关文章:

c# - 在具有多种对象类型的 TreeView 中处理 SelectedItemChanged

silverlight - UI和View在术语上的区别以及在哪种情况下正确

c# - 从解决方案内更新服务引用

.net - 使用Microsoft WCF对P2P分布式系统进行编程

c# - WCF Web 服务的响应大小限制

silverlight-4.0 - 取消 Silverlight OOB 应用程序退出?

c# - Silverlight DataGrid 模板列

wcf - 动态读取 Web 服务方法

data-binding - 如何在具有元素绑定(bind)的 ComboBox 中设置 SelectedIndex?

c# - 从 View 模型调用方法的命令