Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#嵌套字典_C#_Dictionary_Nested - Fatal编程技术网

C#嵌套字典

C#嵌套字典,c#,dictionary,nested,C#,Dictionary,Nested,我的语法有什么问题?我希望能够通过此info[“Gen”][“name”] public var info=新字典{ {“Gen”,新词典{ {“名字”,“创世记”}, {“章节”,“50”}, {“在”、“”}, {“之后”,“Exod”} }}, {“Exod”,新词典{ {“姓名”,“出埃及记”}, {“章节”,“40”}, {“之前”,“根”}, {“之后”,“列夫”} }}}; 不能使用var定义类字段 将var更改为Dictionary: 公共字典信息= 新词典 { { “Gen”,

我的语法有什么问题?我希望能够通过此
info[“Gen”][“name”]

public var info=新字典{
{“Gen”,新词典{
{“名字”,“创世记”},
{“章节”,“50”},
{“在”、“”},
{“之后”,“Exod”}
}},
{“Exod”,新词典{
{“姓名”,“出埃及记”},
{“章节”,“40”},
{“之前”,“根”},
{“之后”,“列夫”}
}}};

不能使用
var
定义类字段

var
更改为
Dictionary

公共字典信息=
新词典
{
{
“Gen”,
新词典
{
{“名字”,“创世记”},
{“章节”,“50”},
{“在”、“”},
{“之后”,“Exod”}
}
},
{
“Exod”,
新词典
{
{“姓名”,“出埃及记”},
{“章节”,“40”},
{“之前”,“根”},
{“之后”,“列夫”}
}
}
};
有关
var
关键字及其用法的更多信息,请参阅

  • var只能在声明和初始化局部变量时使用 在同一声明中;无法将变量初始化为null,或 方法组或匿名函数

  • var不能用于类范围内的字段。

  • 使用var声明的变量不能用于初始化 表情

只需将您的
var
更改为
Dictionary
。喜欢

public Dictionary<string, Dictionary<string, string>> info =
    new Dictionary<string, Dictionary<string, string>>{}
公共字典信息=
新词典{}

你会得到什么编译器错误?你会在
var
这个词上得到编译错误吗?除了错误的实际原因之外,你为什么要使用
字典作为值,当它出现时,你真的想要一个简单的
章节
类?是的,我认为问题是“var”因为它直接在类中,而不是在方法中使用。我同意Jon Skeet的观点,我认为创建一个类是正确的途径,如果他想要一个集合,那么他可以创建一个类本身的列表。
public Dictionary<string, Dictionary<string, string>> info =
    new Dictionary<string, Dictionary<string, string>>
    {
        {
            "Gen",
            new Dictionary<string, string>
            {
                {"name", "Genesis"},
                {"chapters", "50"},
                {"before", ""},
                {"after", "Exod"}
            }
        },
        {
            "Exod",
            new Dictionary<string, string>
            {
                {"name", "Exodus"},
                {"chapters", "40"},
                {"before", "Gen"},
                {"after", "Lev"}
            }
        }
    };
public Dictionary<string, Dictionary<string, string>> info =
    new Dictionary<string, Dictionary<string, string>>{}