.Add在当前上下文中不存在

时间:2019-03-29 20:17:43

标签: c# list xamarin.forms

我正在Xamarin.forms中创建我的第一个应用程序,并希望添加有关字符的信息。我遵循了Microsoft文档,但始终收到以下错误:“。Add在当前上下文中不存在” 我已经过去一两个小时在网上搜索,但似乎没有什么可以解决的。任何帮助将不胜感激,谢谢!

using SQLite;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;

namespace CharCreator
{
    public class Character
    {
        [PrimaryKey, AutoIncrement]
        public int charIndex { get; set; }
        public string charName { get; set; }
        public string charClass { get; set; }
        public string charRace { get; set; }
        public int[] charStats { get; set; }

        public int classId { get; set; }
        public string className { get; set; }
    }

}

public class CharClasses
{   
    List<CharClasses> classList = new List<CharClasses>();
    classList.Add(new CharClasses() {classId = 1, className = "Barbarian"});
}

1 个答案:

答案 0 :(得分:-1)

您的问题始于声明

List<CharClasses> classList = new List<CharClasses>();

您要声明一个CharClasses列表,而不是一个字符列表。然后尝试使用第一个元素初始化此列表。但是您不能在方法外添加代码。

因此,如果确实需要使用 List<Character> 包含至少一个元素初始化 CharClasses ,那么您需要编写此

public class CharClasses
{
    public List<Character> classList = new List<Character>()
    {
        new Character {classId = 1, className = "Barbarian"}
    };

    --- other class method follows

}

Object and Collection Initializers

中的文档中对此语法进行了解释