1 回答
TA贡献1878条经验 获得超4个赞
SignInName类的属性应该声明为public,以便用值反序列化。
public class SignInName
{
public string Type { get; set; }
public string Value { get; set; }
}
更新
这是一个最小、完整且可验证的示例:
using Newtonsoft.Json;
using System.Collections.Generic;
class Program
{
static void Main(string[] args)
{
var json =
"{\"signInNames\":[{\"type\":\"emailAddress\",\"value\":\"user@example.com\"}]}";
var user = JsonConvert.DeserializeObject<User>(json);
System.Console.WriteLine(JsonConvert.SerializeObject(user));
}
}
public abstract class UserB2C
{
public List<SignInName> SignInNames { get; set; }
}
public class User : UserB2C { }
public class SignInName
{
string Type { get; set; }
string Value { get; set; }
}
输出是 {"SignInNames":[{}]}
如果我们创建SignInName类属性public,输出将是:
{"SignInNames":[{"Type":"emailAddress","Value":"user@example.com"}]}
- 1 回答
- 0 关注
- 403 浏览
添加回答
举报
