c# - C# 索引在生成 Json 对象时超出了数组的范围
问题描述
我创建了一个类:
internal class Movie
{
public class BaseResponse
{
public Item[] search { get; set; }
public string response { get; set; }
}
public class Item
{
public string title { get; set; }
}
我想为这样的搜索数组创建 n 个对象:
public void Generate()
{
Movie.BaseResponse baseResponse = new Movie.BaseResponse();
baseResponse.response = "True!";
baseResponse.search = new Movie.Item[] { new Movie.Item()};
baseResponse.search[0].title = "Title one";
baseResponse.search[1].title = "Title two"; //Error accurs here****
string response = JsonConvert.SerializeObject(baseResponse);
}
但这个脚本不能正常工作,它给出了以下错误:
指数数组的边界之外
谁能解释我如何search
在类中创建 n 个数组对象Movie
?
解决方案
您已经创建了一个包含 1 个项目的数组,但您正在尝试访问不存在的第二个项目。
将相关行更改为:
baseResponse.search = new Movie.Item[] { new Movie.Item(), new Movie.Item() };
推荐阅读
- sql - 在最宽维度上使用 GROUP BY 的 CASE WHEN 语句
- c - 我可以将一个字符与我选择的所需整数相关联吗?
- angular - 这是在前端处理独特客户行为的好解决方案吗?
- omnet++ - 你能用 OMNET++ 做 ROCH 和 LwIP 模拟吗
- kubernetes - Kubernetes:带多通道的 Skaffold
- reactjs - 在嵌套导航中移动到堆栈顶部(父屏幕)
- javascript - 带有 Express 的 Knex.js,如何在 knex.commit 后跟 knex.select 查询?
- unix - iconv 将 Mainframe EBCDIC 文件转换为 Unix 可读格式将数据写入一行
- selenium - 我不确定我应该在哪两个元素之间寻找和格式化错误(jupyter + selenium)
- python - 在子进程中创建 pipenv