c# - 无法加载类型 'System.Net.Http.FormattingUtilities'

标签 c# android .net xamarin.android

在 Xamarin.Android 项目的 PCL 项目中,当我执行 httpClient.PostAsJsonAsync()httpClient.PutAsJsonAsync() 时出现以下错误>.

错误:

System.TypeLoadException:无法从程序集“System.Net.Http.Formatting,Version=5.2.3.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”加载类型“System.Net.Http.FormattingUtilities”。

此代码中出现此错误:

public async Task<User> CreateUser(string name, string email, string password)
    {
        try
        {
            User user = new User();
            user.Name = name;
            user.Email = email;
            user.Password = password;

            var response = await _client.PostAsJsonAsync("myUrl", user); // error on this line
            string content = await response.Content.ReadAsStringAsync();

            return string.IsNullOrEmpty(content) ? new User() :
                JsonConvert.DeserializeObject<User>(content);
        }
        catch (JsonReaderException ex)
        {
            throw ex;
        }
        catch (WebException ex)
        {
            throw ex;
        }
        catch (Exception ex)
        {
            throw ex; // ex is null here
        }
}

最佳答案

我放弃了。

我把它改成:

string json = JsonConvert.SerializeObject(user);
var stringContent = new StringContent(json, Encoding.UTF8, "application/json");
var response = await _client.PostAsync(myUrl, stringContent);

现在可以了。

关于c# - 无法加载类型 'System.Net.Http.FormattingUtilities',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40005413/

相关文章:

android - 具有多个模块的 Android 上的 Firebase 推送通知

c# - 努力估计 : using C/Win32 or learning C#/. NET

c# - 如何动态执行多个 Linq to Entities 排序

c# - 如何使 Microsoft.Web.Helpers.ReCaptcha 与 X-Forwarded-Proto 一起使用

java - 寻找 android Facebook SDK 示例

c# - 使用 .NET 库 ECDsaCng 验证 BouncyCaSTLe ECDsa 签名

.net - 将文件上传到 WCF 3.5 服务

c# - 以编程方式列出 Windows 10 中所有受支持的语言环境

c# - 输入字符串的格式不正确

android - 将 Android 连接到 Wamp 服务器