Newtonsoft.JSON serializeobject返回空的JSON字符串
每个人都得到了很多这个问题,我几乎尝试了一切,但没有一个对我有用。
所以我正在开发Xamarin.Forms并且即将把我的数据发送到服务器。 我有这堂课:
public class Customer { public string FirstName { get; set; } public string LastName { get; set; } public string BirthDate { get; set; } public string Password { get; set; } public string EmailAddress { get; set; } public string ContactNumber { get; set; } }
然后我使用了Newtonsoft的SerializeObject方法:
Customer customer = new Customer { FirstName = FirstName.Text, LastName = LastName.Text, BirthDate = BirthDate.Date.ToString(), EmailAddress = Email.Text, Password = Password.Text, ContactNumber = Mobile.Text }; var item = JsonConvert.SerializeObject(customer);
但是变量item
产生一个包含空JSON对象的字符串{}
。 我的实施有问题吗?
编辑:此外,我注意到虽然我的客户类及其成员是公开的,但调试器仍将其视为“非公开”成员。 请参阅“调试器的屏幕截图”:
您的问题有点误导,因为您将类属性显示为公共属性。
此外,我注意到虽然我的客户类是公开的,但其成员是非公开的:
说到这些是你的选择:
- 如果您的房产可以公开,请将其公开
- 如果属性需要保持私有,请将
[JsonProperty]
属性添加到它们
看来Xamarin Live Player在序列化程序方面存在一些问题。 我尝试通过USB插入我的手机,它的工作原理!