Получение MissingMethodException при использовании Manatee.trello для получения списка пользователей
У меня есть следующий код, который предназначен для получения списка всех пользователей организации.
public static IEnumerable<Member> ListTrelloUsers()
{
var serializer = new ManateeSerializer();
TrelloConfiguration.Serializer = serializer;
TrelloConfiguration.Deserializer = serializer;
TrelloConfiguration.JsonFactory = new ManateeFactory();
TrelloConfiguration.RestClientProvider = new RestSharpClientProvider();
TrelloAuthorization.Default.AppKey = ApplicationKey;
TrelloAuthorization.Default.UserToken = GrandToken;
var myOrganization = Member.Me.Organizations.FirstOrDefault().Id; //Exception thrown here.
var orgToAddTo = new Organization(myOrganization);
return orgToAddTo.Members.AsEnumerable();
}
Но я получаю
System.MissingMethodException
брошенный на
RestSharp.IRestRequest RestSharp.RestRequest.AddFile(System.String, Byte[], System.String)
Так почему выдается это исключение и как должен выглядеть правильно работающий код?
Разъяснения
Я также приму рабочий код C#/ASP.Net MVC, который не основан на Manatee.Trello, в качестве ответа. (Включая чистые API-вызовы.)
Я пытался использовать идентификатор организации непосредственно как
var orgToAddTo = new Organization(OrganisationId);
но это просто вызвало то же исключение, которое выдается позже, когда я вызываю возвращаемый объект метода (например, используя Count()).
ОБНОВЛЕНИЕ: я попытался установить сборку в Release вместо Debug, и теперь вместо этого выдается (то же самое) исключение
TrelloConfiguration.RestClientProvider = new RestSharpClientProvider();
2 ответа
Это проблема с RestSharp, о которой я сообщал довольно давно, хотя они отрицают, что это проблема. Если вы используете.Net 4.5+, вы можете попробовать пакет Manatee.Trello.WebApi вместо Manatee.Trello.RestSharp.
TrelloConfiguration.RestProvider = new WebApiClientProvider();
Вот моя карта Trello для отслеживания проблемы. Это и это проблемы RestSharp, которые я создал.
Я был в состоянии воссоздать это также, но не получил никакой помощи от них, чтобы решить это.
По всей видимости, класс с отсутствующим методом находится в сборке, которая отличается от той, которую вы использовали при компиляции проекта. Дважды проверьте и убедитесь, что как при компиляции, так и при выполнении вы используете одну и ту же сборку с вышеупомянутым классом. Это моя лучшая подсказка на основе предоставленной вами информации.
- в основном, проверяйте ссылки на проекты и убедитесь, что вы используете правильные ссылки для сборки классов.