C # Generics: «x» является «типом», но используется как «переменная» - PullRequest
0 голосов
/ 10 ноября 2010

По какой-то причине этот код не скомпилируется:

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

Ошибка:

Ошибка 91 'System.Collections.Generic.IDictionary>' является «типом», но используется как 'Переменная'

Что я здесь не так делаю? Я чувствую, что упускаю что-то простое.

Ответы [ 3 ]

13 голосов
/ 10 ноября 2010

Похоже на опечатку.Я вижу три <, но только два >.

7 голосов
/ 10 ноября 2010

Вам не хватает >.

. В качестве иллюстрации я сопоставил < с и > с ниже:

_sectionStories = serializer.Deserialize<
                     IDictionary<
                        int,
                        ObservableCollection<Story>
                     >
                  >(new JTokenReader(contents)));
0 голосов
/ 10 ноября 2010

Я думаю, что хороший синтакс это:

JsonSerializer serializer = new JsonSerializer();
        _sectionStories = serializer.Deserialize < IDictionary<int, ObservableCollection<Story>>>(new JTokenReader(contents)); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...