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 に答える