Приведение пользовательского типа коллекции в C # - PullRequest
1 голос
/ 23 февраля 2012

У меня есть собственный метод, который возвращает коллекцию:

 Course[] catalog = clnt.GetCatalog(new Guid(CurrentUser.MembershipGUID));

Затем я передаю его моему объекту ViewData:

 ViewData["catalog"] = catalog;

Но когда я пытаюсь получить к нему доступ на своей странице aspx, вот так:

   var catalog = ViewData["catalog"] as Course[];

Вот вызываемый метод:

    public List<Course> GetCatalog()
    {

        using (var db = new BALmsDBContainer())
        {
            List<Course> lst = db.Courses.Include(i => i.Vendor).ToList();
          return lst;
        }
     }

Я получаю, что каталог пуст. Мой объект ViewData ["catalog"] не является нулевым. 100% гарантия на это. Как привести объект ViewData ["catalog"] обратно к Course []?

1 Ответ

0 голосов
/ 23 февраля 2012
var catalog = (Course)ViewData["catalog"]

Оператор "as" фактически отличается от явного приведения, как указано здесь: http://msdn.microsoft.com/en-us/library/cscsdfbt(v=vs.100).aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...