【问题标题】:Ria services: simple >>object<< properties/fields not appearing on the client sideRia 服务:简单的 >>object<< 属性/字段未出现在客户端
【发布时间】:2012-06-13 14:25:57
【问题描述】:

我正在使用 Ria 服务, 我的 POCO 对象具有简单的对象属性/字段。但它们并没有出现在客户端。 请帮忙, 我的 POCO:

[EnableClientAccess]
[DataContract]
public class DataRow
{
   [DataMember]
   [Key]
   public int RowId { get; set; }
   [DataMember] public >>>object[]<<< FieldValue { get; set; };
   public DataRow()
   {

   }
}

我尝试使用 getter/setter 代替字段属性 我试过&gt;&gt;&gt;object&lt;&lt;&lt; FieldValue { get; set; } (NOT ARRAY), IEnumerable&lt;object&gt; ... 结果相同。 使用 WCF 我可以做到。 例如。我的 wcf 服务中有这份合同(用于共享点)

[DataContract]
public class SPFieldValueStub
{
    //[DataMember]
    //public virtual int ListItemIndex { get; set; }
    [DataMember]
    public virtual object Raw { get; set; }
    [DataMember]
    public virtual object Formatted { get; set; }
    [DataMember]
    public virtual IEnumerable<SPFieldValueStub> References { get; set; }
    [DataMember]
    public virtual IEnumerable<object> Properties { get; set; }
    [DataMember]
    public virtual SPFieldStub Field { get; set; }
}
[DataContract]
public class SPListItemStub
{
    [DataMember]
    public virtual IEnumerable<SPFieldValueStub> Values { get; set; }

}

在服务实现中,我可以从共享点列表中读取数据填充我的 POCO 并返回给客户端。之后,我可以通过生成的代理方法在客户端检索 POCO,并将对象解包(拆箱)为真实类型(适用于我的 String/Uri/DateTime)。我需要通过 RIA 这样做。

【问题讨论】:

    标签: wcf silverlight poco ria


    【解决方案1】:

    因为Object 不包含任何字段。

    【讨论】:

    • 如何包装任何可序列化的内置(或我的自定义数据契约)类型的值?
    • @user1453867 我不知道您要做什么(以及您是如何使用 WCF 做到的),但您无法序列化 object,因为它不包含任何字段。另请参阅this question
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多