【问题标题】:Xamarin.Forms - TypeLoadException Failure has occurred while loading a typeXamarin.Forms - 加载类型时发生 TypeLoadException 失败
【发布时间】:2016-09-17 10:36:49
【问题描述】:

我正在使用便携式 Xamarin 表单 - CrossPlatform。 xamarin形式有Android和IOS两个项目

当我在 android APP 中运行时,以下代码运行良好。 但同样的代码在 IOS 中不起作用。

在“var response = await client.Execute(request);”行出现错误“加载类型时发生故障”

下面是我的代码

public async Task<ResponseGeneralObject<TokenModel>> LoginUser(LoginModel loginModel)
{
    ResponseGeneralObject<TokenModel> result = new ResponseGeneralObject<TokenModel>();
    try
    {
        var restUrl = App.URLServicePath + "token";
        var client = new RestClient(restUrl);
        TokenModel model = new TokenModel();

        var request = new RestRequest("", Method.POST);
        request.AddParameter("grant_type", "password");
        request.AddParameter("username", loginModel.UserName);
        request.AddParameter("password", loginModel.Password);

        var response = await client.Execute(request);
        var content = response.Content;

        if (response.StatusCode == System.Net.HttpStatusCode.OK)
        {
            result.data = JsonConvert.DeserializeObject<TokenModel>(content);
            // model = new JavaScriptSerializer().Deserialize<TokenModel>(response.Result.Content);
            result.iserror = false;
        }
        else
        {
            result.iserror = true;
            result.message = "Internal error!";
        }
    }
    catch (Exception ex)
    {
        result.iserror = true;
        result.message = ex.Message;
    }
    return result;
}

【问题讨论】:

    标签: c# android ios xamarin.ios xamarin.forms


    【解决方案1】:

    您是否为RestClient 使用了第三方库?如果是这样,请确保引用的版本在您的 iOS、Android 和 PCL 项目中匹配。当 PCL 和平台项目之间的包不匹配时,我已经看到 TypeLoadExceptions

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-01
      相关资源
      最近更新 更多