1

我的 CLR 类中有一个 json 字符串,如下所示:

string parameteres = "{\"Parameter\":{\"personId\":\""+PersonId.ToString()+"\",\"date\":\""+Date.Value+"\"}}";

CLR 类调用 REST api 并将参数传递给它。在我的 REST api 中,我像这样反序列化参数:

JObject enterddata = JObject.Parse(jsoninput);
        string jsonparam = enterddata["Parameter"].ToString();
        var personId = new Guid();
        var date = new DateTime();
        try
        {
            JObject data = JObject.Parse(jsonparam);
            personId = new Guid(data["personId"].ToString());

            date = (DateTime)data["date"];

           //Other Codes Goes Here
        }
        catch (Exception ex)
        {

        }

当我到达这条线时:

date = (DateTime)data["date"]; 

发生异常并且不会将其转换为 DateTime。我怎样才能让它工作?

4

1 回答 1

1

在这种情况下,您必须指定正确的日期格式 ISO 应该这样做

string parameteres = string.Format"{\"Parameter\":{\"personId\":\"{0}\",\"date\":\"{1:yyyy-MM-dd HH:mm:ss}\"}}",PersonId,Date.Value);
于 2014-07-15T13:41:47.923 回答