无法反序列化当前的JSON阵列

问题描述:

我从LINQ执行查询,让我列 下面的列表是查询:无法反序列化当前的JSON阵列

var userList = context.Users.Where(x => x.UserFirstName.Contains(value.ToString()) && x.UserAccessLevel == (int)AuthUser.AuthUserUserType.Manager) 
         .Select(x =>new UserGridDetails(){ UserFirstName = x.UserFirstName, UserLastName = x.UserLastName, UserEmailAddress = x.UserEmailAddress}) 
         .ToList(); 

       output = JsonConvert.SerializeObject(userList); 

这里从查询

[{"UserFirstName":"Manager3","UserLastName":"ManagerLastName","UserEmailAddress":"[email protected]"}] 

我是JSON数据m试图将这些数据反序列化为一个C#类对象,它具有以下类别

public class UserJsonWrapper 
{ 
    public List<UserGridDetails> UserGridDetailses { get; set; } 

} 

public class UserGridDetails 
{ 
    public string UserFirstName { get; set; } 
    public string UserLastName { get; set; } 
    public string UserEmailAddress { get; set; } 
} 

这里是反序列化代码

UserJsonWrapper jsonToDataTable = JsonConvert.DeserializeObject<UserJsonWrapper>(value); 
+0

这是否都发生在一种方法?那么你是序列化数据并随后对其进行反序列化? – khlr

摆脱包装。给你一个数组,而不是一个包含数组作为属性的对象。

var jsonToDataTable = JsonConvert.DeserializeObject<List<UserGridDetails>>(value); 
+2

不应该是List ?作为类型UserGridDetails的列表和结果列表是那种类型? – Zee

+0

@SyedAbbasZakirHussain对不起,应该是。我会修好它 – Rob

+0

抢你是达人,这里有一个饼干! – Zee