为什么我不能在c#中调用date.ToString()和str.Length一起工作?
本文关键字:str Length 一起 工作 ToString 不能 date 调用 为什么 | 更新日期: 2023-09-27 18:14:42
我意识到这可能是一个新问题,但无论我尝试或查找什么,我似乎都找不到任何答案,为什么我不能像我想要的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 += "},";
}
Exception Details: System. s。Index和length必须指向字符串中的一个位置。包含'dateYear'的行错误
所有我想做的是结束与一个长json字符串在这结束,但我似乎不能停止得到错误。
在子字符串中传递的第二个参数应该是您想要返回的字符数,但是您传递的是您想要作为子字符串的字符串的总长度。
编辑:如果是一年,那么我认为第二个参数应该是4:
Json.Encode(row.eventDate.ToString().Substring(row.eventDate.ToString().LastIndexOf("/"), 4))