我尝试将DateTime对象作为查询字符串参数传递给使用ServiceStack.net构建的Web服务方法。
传递时日期是正确的URL编码,但我不断收到以下错误:
"Message":"KeyValueDataContractDeserializer: Error converting to type: String was not recognized as a valid DateTime.
有关如何纠正此问题的任何想法?
以下是我传递的URL编码日期时间示例:2%2f24%2f2012 + 5%3a13%3a02 + PM
答案 0 :(得分:6)
如果 将日期时间作为字符串传递,请尝试以明确的格式传递它们。我假设你想要通过2012年2月24日17:13:02 - 以下内容将毫不含糊:
2012-02-24T17:13:02
E.g。如果您在.NET中使用formatting日期,请使用" o"或" s"
与URL编码无关 - 它与明确传递数据有关 - 例如01/02/2012等日期至少可以通过两种方式解释 - 2月1日或今年1月2日,两人。
答案 1 :(得分:0)
您是否看过让websservice接受一个字符串参数,然后使用DateTime.Parse或DateTime.TryParse将字符串转换为DateTime?