C# Json.Net在Xamarin/MonoTouch共享库中抛出奇怪错误

C# Json.Net在Xamarin/MonoTouch共享库中抛出奇怪错误,c#,xamarin.ios,xamarin,json.net,portable-class-library,C#,Xamarin.ios,Xamarin,Json.net,Portable Class Library,我正在Xamarin/Monotouch解决方案的共享库项目中创建一个通用存储库。存储库通过http连接到REST服务并接收json。我使用json.net来反序列化传入的json。我在回购协议中采用以下方法: public async Task<List<T>> GetAll() { List<T> result = null; using (var client = new HttpClient())

我正在Xamarin/Monotouch解决方案的共享库项目中创建一个通用存储库。存储库通过http连接到REST服务并接收json。我使用json.net来反序列化传入的json。我在回购协议中采用以下方法:

    public async Task<List<T>> GetAll()
    {
        List<T> result = null;
        using (var client = new HttpClient())
        {
            client.BaseAddress = new Uri(_baseApiString + _resourceName);
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            HttpResponseMessage response = await client.GetAsync("");
            if (response.IsSuccessStatusCode)
            {
                var json = await response.Content.ReadAsStringAsync ();
                result = JsonConvert.DeserializeObject<List<T>>(json); //this is where the trouble starts
            }
        }
        return result;
    }
public异步任务GetAll()
{
列表结果=空;
使用(var client=new HttpClient())
{
client.BaseAddress=新Uri(\u baseapisting+\u resourceName);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(新的MediaTypeWithQualityHeaderValue(“应用程序/json”);
HttpResponseMessage response=wait client.GetAsync(“”);
if(响应。IsSuccessStatusCode)
{
var json=await response.Content.ReadAsStringAsync();
result=JsonConvert.DeserializeObject(json);//这就是问题开始的地方
}
}
返回结果;
}
当我打电话时

result = JsonConvert.DeserializeObject<List<T>>(json);
result=JsonConvert.DeserializeObject(json);
我得到以下错误:

无法从程序集“mscorlib,版本=2.0.5.0,区域性=中性,PublicKeyToken=7cec85d7bea7798e”加载类型“System.EmptyArray”“1[Reflect.Business.Review]”

我最初想使用RestSharp.Shared(在封面下使用json.net),这样我就可以使用RestSharp api了。这会抛出完全相同的错误

那么,您对是什么让json.net能够在xamarin共享库项目中正常工作有什么想法?我做错了什么


谢谢

如何使用Json.Net?你使用nuget软件包吗?你能分享你的源代码吗?我知道了。项目中未引用包含我试图反序列化的模型的某个子字段类型的程序集,从而导致错误。无论如何谢谢你!