如何在客户端转换DataContract中属性的数据类型

本文关键字:属性 数据类型 DataContract 转换 客户端 | 更新日期: 2023-09-27 18:27:26

我有一个WCF服务,它返回一个List<MyData>对象。MyData是一个DataContract类,其中有一组属性,其中一个属性是Int64类型的UnixTime。我想要C#DateTime格式的。我知道如何将unix时间转换为常规DateTime值。我想知道的是,有没有一种方法可以在客户端更改我的DataContract(或其他想法),在那里我可以将unix时间转换为常规时间格式,这样我就可以直接访问List<MyData>对象中的值?

编辑:
实际上,我并没有将服务引用添加到我的解决方案中。我通过HttpWebRequest对象调用wcf服务,并使用JavaScriptSerializer反序列化输出响应。我为数据契约创建了自己的类作为响应对象。

如何在客户端转换DataContract中属性的数据类型

您可以将DateTime属性添加到MyData类:

public DateTime UnixDateTime
{
    get
    {
        return MyConversionMethod(this.UnixTime);
    }
}

感谢Tim S提供的有用提示。

我在没有[DataMember]属性的MyData类中创建了一个名为MSDateTime的新属性,并返回了unixtime的转换值。这解决了问题。