При работе с Trello возникло необработанное исключение NullReferenceException.

В настоящее время я работаю с TrelloNet над разработкой собственного приложения-органайзера Trello. Начал с двух фрагментов кода, показанных ниже («xxxx» — мой собственный код аутентификации и ключ приложения, замаскированный в целях конфиденциальности):

using System;
using TrelloNet;

class Program
{
    static void Main(string[] args)
    {
        ITrello trello = new Trello("xxxx");
        trello.Authorize("xxxx");

        var myBoard = trello.Boards.Add("My Board");
    }
}

Этот код сработал, доска "Моя доска" была успешно добавлена. А вот второй слегка модифицированный код встретил исключение.

using System;
using TrelloNet;

class Program
{
    static void Main(string[] args)
    {
        ITrello trello = new Trello("xxxx");
        trello.Authorize("xxxx");

        Member me = trello.Members.Me();
        Console.WriteLine(me.FullName);       //exception poped up here.
    }
}

После выполнения выскочило исключение в строке Console.WriteLine(me.FullName);, исключение

  • NullReferenceException was unhandled.
  • An unhandled exception of type 'System.NullReferenceException' occurred in TrelloOrganizer.exe Additional information: Object reference not set to an instance of an object.

объект trello действительно является экземпляром объекта, почему я получил это исключение?

Спасибо


person Yu Zhang    schedule 23.03.2016    source источник
comment
См.: stackoverflow.com/questions/29967865/. Обновление ваших ссылок может исправить это.   -  person p e p    schedule 23.03.2016
comment
Большое спасибо, посмотрю.   -  person Yu Zhang    schedule 23.03.2016


Ответы (1)


Вы пытаетесь получить свойство FullName объекта me, которое равно null. Убедитесь, что этот объект установлен перед его использованием. Или проверьте значение null после получения ссылки на него. Возможно, вам придется вернуться отсюда. Я не знаю, что делает TrelloNet, когда вы пытаетесь авторизоваться, но это не удается. Если он может вернуть null из вызова Me(), то вы должны сначала убедиться, что он не нулевой, прежде чем использовать его. В любом случае у вас также должна быть некоторая обработка ошибок с использованием конструкции try-catch.

person ManoDestra    schedule 23.03.2016
comment
Большое спасибо. @МаноДестра - person Yu Zhang; 23.03.2016
comment
Заметил, что мой ответ не принят. Есть проблема? - person ManoDestra; 16.06.2016
comment
Безуспешно пытаюсь восстановить права на публикацию. - person Yu Zhang; 17.06.2016