我正在为约会数据库创建一个WCF数据服务。
我将约会存储为DateTime,其持续时间为TimeSpan。当我尝试访问我的数据服务时,出现以下错误:
“服务器在处理请求时遇到错误。异常消息是'预约'类型的属性'持续时间'是'时间'类型,它不是受支持的基本类型。'。有关详细信息,请参阅服务器日志。“
知道如何表示持续时间并通过我的WCF数据服务访问它吗?
答案 0 :(得分:6)
我建议使用原始时间范围的DataMemberAttribute
属性公开序列化的新属性(标有Ticks
)。
例如:
[DataMember("TheTimeSpanTicks")]
public long TheTimeSpanTicks
{
get { return TheTimeSpan.Ticks; }
set { TheTimeSpan = new TimeSpan(value); }
}
我不确定序列化的访问者要求是什么。也许您可以使用protected
代替public
。
答案 1 :(得分:0)
您可以将持续时间公开为Ticks,TotalSeconds或其他可以计算为小时,分钟等的原语吗?