- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已将 Xamarin Native UI 用于 Android 应用程序,并为 API 调用和数据创建了不同的类库使用 Newtonsoft.Json
反序列化 api 数据。
该类库 Target Framework 是 .NET Standar 2.0
。
因为我添加了对控制台应用程序的引用,所以它工作正常,但我在 Android 项目中添加了相同的引用,它的抛出错误。
**错误详情**
Newtonsoft.Json.JsonSerializationException:无法找到用于类型的构造函数。一个类应该有一个默认构造函数、一个带参数的构造函数或一个标有 JsonConstructor 属性的构造函数。
根据错误消息,我已将属性 JsonConstructor
用于类的默认构造函数。
例子:
public class TestClass
{
[JsonConstructor]
public TestClass()
{
}
}
最佳答案
As PreserveAttribute required Mono.Android.dll Or 'Xamarin.iOS.dll' reference in that but my class library is Common for both thats why it is not possible
将 PreserveAttribute
类添加到您的类库并使用该属性,因为 Mono 链接器仅使用属性的“名称”,而不使用 namespace /类名...
public sealed class PreserveAttribute : Attribute
{
public bool AllMembers;
public bool Conditional;
public PreserveAttribute (bool allMembers, bool conditional)
{
AllMembers = allMembers;
Conditional = conditional;
}
public PreserveAttribute ()
{
}
}
然后在您的 JSON 模型/类上使用该属性:
[Preserve(AllMembers = true)]
public class TestClass
{
~~~
关于c# - 带有 .NET 标准库的 Xamarin.Android 上的 JsonSerializationException 'Unable to find a constructor',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52639795/
我是一名优秀的程序员,十分优秀!