1

これはおそらく初歩的な質問になると思いますが、何を試しても調べても、json文字列に必要なように一部の文字列をトリミングできない理由に対する答えが見つからないようです。

このページは AJAX リクエストを介して到達し、データベースにクエリを実行し、最終的にオブジェクトの配列である json オブジェクトに解析される json 文字列をコンパイルしようとします。十分に単純に聞こえます...

私が今持っているもの:

foreach (var row in db.Query(selectQueryString))
{
    jsonString += "{";
    jsonString += "\"title\":\"" + Json.Encode(row.title) + "\",";
    jsonString += "\"dateNumber\":\"" + Json.Encode(row.eventDate.ToString().Substring(0, row.eventDate.ToString().IndexOf("/"))) + "\",";
    jsonString += "\"dateMonth\":\"" + Json.Encode(row.eventDate.ToString().Substring(row.eventDate.ToString().IndexOf("/"), row.eventDate.ToString().LastIndexOf("/"))) + "\",";
    jsonString += "\"dateYear\":\"" + Json.Encode(row.eventDate.ToString().Substring(row.eventDate.ToString().LastIndexOf("/"), row.eventDate.ToString().Length)) + "\",";
    jsonString += "\"summary\":\"" + Json.Encode(row.summary) + "\",";
    jsonString += "},";
}

例外の詳細: System.ArgumentOutOfRangeException: インデックスと長さは、文字列内の場所を参照する必要があります。 「dateYear」を含む行のエラー

私がやりたいのは、これの終わりまでに長いjson文字列になってしまうことだけですが、エラーが発生するのを止めることはできません。

4

1 に答える 1