c# – 反序列化类时“Newtonsoft.Json.JsonSerializationException无法找到用于类型的构造函数”错误

我正在开发Xamarin Android中的应用程序.我有一个启动画面,我在其中序列化一个类并使用Intent将其传递给MainActivity.当我尝试在MainActivity中反序列化它时,我收到一条错误消息:

"SerializationException unable to find constructor to use for types" 

序列化:

void LoadData() {
    Currency currency = new Currency(this);
    intent = new Intent(this, typeof(MainActivity));
    intent.PutExtra("currency", Newtonsoft.Json.JsonConvert.SerializeObject(currency));
    StartActivity(intent);
}

反序列化:

cur = Newtonsoft.Json.JsonConvert.DeserializeObject<Currency> (Intent.GetStringExtra("currency")); // I get the error here

类构造函数:

public Currency(Context context) {
    thiscontext = context;
}

在将参数Context上下文添加到构造函数后,我开始遇到此问题.
是什么导致了这个?我该如何解决?
是否可以序列化/反序列化具有参数的类?

最佳答案
您需要在Currency类中有一个空构造函数才能反序列化它.

转载注明原文:c# – 反序列化类时“Newtonsoft.Json.JsonSerializationException无法找到用于类型的构造函数”错误 - 代码日志