使用 Manatee.trello 获取用户列表时出现 MissingMethodException
Getting MissingMethodException when using Manatee.trello to get list of users
我有以下代码,旨在获取一个组织的所有用户的列表。
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)
那么为什么会抛出这个异常,正确工作的代码应该是什么样的?
澄清
我也将接受不基于 Manatee.Trello 的工作 C#/ASP.Net MVC 代码作为答案。 (包括纯 API 调用。)
我试过直接使用组织 ID 作为
var orgToAddTo = new Organization(OrganisationId);
但是当我调用该方法的返回对象(例如使用 Count())时,这只会导致稍后抛出相同的异常。
更新:我尝试将构建设置为 Release 而不是 Debug,现在(相同的)异常被抛出
TrelloConfiguration.RestClientProvider = new RestSharpClientProvider();
显然,缺少方法的 class 位于程序集中,与您在编译项目时使用的程序集不同。仔细检查并确保在编译和执行时使用与上述 class 相同的程序集。
根据您提供的信息,这是我最好的线索。
- 基本上,检查项目参考并确保您使用正确的 class-holding 组件。
这是我很久以前报告的 RestSharp 问题,尽管他们否认这是一个问题。如果您使用的是 .Net 4.5+,您可以尝试 Manatee.Trello.WebApi 包而不是 Manatee.Trello.RestSharp。
TrelloConfiguration.RestProvider = new WebApiClientProvider();
Here's my Trello card for tracking the issue. This and this 是我创建的 RestSharp 问题。
我也能够重新创建它,但没有得到他们的帮助来解决它。
我有以下代码,旨在获取一个组织的所有用户的列表。
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)
那么为什么会抛出这个异常,正确工作的代码应该是什么样的?
澄清
我也将接受不基于 Manatee.Trello 的工作 C#/ASP.Net MVC 代码作为答案。 (包括纯 API 调用。)
我试过直接使用组织 ID 作为
var orgToAddTo = new Organization(OrganisationId);
但是当我调用该方法的返回对象(例如使用 Count())时,这只会导致稍后抛出相同的异常。
更新:我尝试将构建设置为 Release 而不是 Debug,现在(相同的)异常被抛出
TrelloConfiguration.RestClientProvider = new RestSharpClientProvider();
显然,缺少方法的 class 位于程序集中,与您在编译项目时使用的程序集不同。仔细检查并确保在编译和执行时使用与上述 class 相同的程序集。 根据您提供的信息,这是我最好的线索。
- 基本上,检查项目参考并确保您使用正确的 class-holding 组件。
这是我很久以前报告的 RestSharp 问题,尽管他们否认这是一个问题。如果您使用的是 .Net 4.5+,您可以尝试 Manatee.Trello.WebApi 包而不是 Manatee.Trello.RestSharp。
TrelloConfiguration.RestProvider = new WebApiClientProvider();
Here's my Trello card for tracking the issue. This and this 是我创建的 RestSharp 问题。
我也能够重新创建它,但没有得到他们的帮助来解决它。