如何通过 WCF 数据服务公开 TimeSpan?
我正在为我的约会数据库创建 WCF 数据服务。
我将约会存储为 DateTime,持续时间类型为 TimeSpan。当我尝试访问我的数据服务时,出现以下错误:
“服务器在处理请求时遇到错误。异常消息是“‘约会’类型上的属性‘持续时间’属于‘时间’类型,这不是受支持的原始类型。”。有关更多详细信息,请参阅服务器日志”
知道如何表示一个持续时间并通过我的 WCF 数据服务访问它吗?
I am creating a WCF Data Service for my database of appointments.
I'm storing the appointment as a DateTime with a duration of type TimeSpan. When I attempt to access my data service, I get the following error:
"The server encountered an error processing the request. The exception message is 'The property 'Duration' on type 'Appointment' is of type 'Time' which is not a supported primitive type.'. See server logs for more details."
Any idea how I can represent a time duration and have it accessible through my WCF Data Service?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我建议公开一个新的序列化属性(用
DataMemberAttribute
标记),该属性使用原始时间跨度的Ticks
属性。例如:
我不确定序列化的访问器要求是什么。也许您可以使用
protected
而不是public
。I would suggest exposing a new property for serialization (marked with the
DataMemberAttribute
) that use theTicks
property of your original timespan.For example:
I'm not sure what the accessor requirements for serialization will be. Maybe you could use
protected
instead ofpublic
.您可以将持续时间公开为 Ticks、TotalSeconds 或其他可以计算为小时、分钟等的原语吗?
You could expose the duration as Ticks, TotalSeconds, or some other primitive that can be calc'ed to hours, minutes, etc?