首页 > 解决方案 > 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

标签: c#asp.net

解决方案


您已经创建了一个包含 1 个项目的数组,但您正在尝试访问不存在的第二个项目。

将相关行更改为:

baseResponse.search = new Movie.Item[] { new Movie.Item(), new Movie.Item() };

推荐阅读