C#泛型:'x'是'类型'但是像'变量'一样使用

时间:2010-11-10 15:14:32

标签: c# generics compiler-errors

由于某种原因,此代码无法编译:

JsonSerializer serializer = new JsonSerializer();
_sectionStories = serializer.Deserialize < IDictionary<int, ObservableCollection<Story>>(new JTokenReader(contents));

错误:

  

错误91'System.Collections.Generic.IDictionary&gt;'   是一个'类型',但用作一个   '变量'

我在这里做错了什么?我觉得我错过了一些基本的东西。

3 个答案:

答案 0 :(得分:13)

看起来像一个错字。我看到三个<但只有两个>

答案 1 :(得分:7)

您错过了>

为了便于说明,我已对下面的<>进行了匹配:

_sectionStories = serializer.Deserialize<
                     IDictionary<
                        int,
                        ObservableCollection<Story>
                     >
                  >(new JTokenReader(contents)));

答案 2 :(得分:0)

我认为好的合成器是:

JsonSerializer serializer = new JsonSerializer();
        _sectionStories = serializer.Deserialize < IDictionary<int, ObservableCollection<Story>>>(new JTokenReader(contents));