我在序列化pcl类对象时遇到问题,因为无法计算类对象属性。我的解决方案的结构有三个项目 -
我的服务类中有一个方法,如 -
public async Task<HttpResponseMessage> SignIn(string username, string password)
{
var user = new Dto.UserLogin(username, password);
var serialize = Newtonsoft.Json.JsonConvert.SerializeObject(user);
var content = new StringContent(serialize);
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
HttpResponseMessage response = null;
using (var client = GetClient("{urlhere}", username, "POST"))
{
response = await client.PostAsync("api/{methodname}", content);
}
return response;
}
上面的代码不会抛出错误,可以实例化“user”变量。然而问题是当序列化线发生时,它没有任何序列化。似乎“用户”对象无法访问或显示“电子邮件”和“密码”这两个属性。但我可以使用“user.Email”在调试中访问它们。我附上了它的截图。
电子邮件和密码属性是公开的。
谢谢, 马文
答案 0 :(得分:0)
@Jack的评论帮助我找出罪魁祸首。在Xamarin.Android属性设置 - > Android选项 - &gt;链接器中,目前它设置为“SDK和用户程序集”。我将其更改为“仅SDK程序集”,这解决了这个问题。