[英]Why won't my calls to date.ToString() and str.Length in C# work together?
我意识到这可能将是一个新问题,但是无论我尝试还是查找,我似乎都找不到找不到为什么无法像我想要的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我认为:
Json.Encode(row.eventDate.ToString().Substring(row.eventDate.ToString().LastIndexOf("/"), 4))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.