有没有一种简单的方法来填充我的C#对象与通过AJAX传递的JSON对象?
//这是使用JSON.stringify从页面传递给C#WEBMETHOD的JSON对象
{
"user": {
"name": "asdf",
"teamname": "b",
"email": "c",
"players": ["1", "2"]
}
}
Run Code Online (Sandbox Code Playgroud)
// C#WebMetod接收JSON对象
[WebMethod]
public static void SaveTeam(Object user)
{
}
Run Code Online (Sandbox Code Playgroud)
// C#类,表示传入WebMethod的JSON Object的对象结构
public class User
{
public string name { get; set; }
public string teamname { get; set; }
public string email { get; set; }
public Array players { get; set; }
}
Run Code Online (Sandbox Code Playgroud) 尝试将JSON字符串转换为C#中的对象.使用一个非常简单的测试用例:
JavaScriptSerializer json_serializer = new JavaScriptSerializer();
object routes_list = json_serializer.DeserializeObject("{ \"test\":\"some data\" }");
Run Code Online (Sandbox Code Playgroud)
问题是routes_list永远不会被设置; 这是一个未定义的对象.有任何想法吗?
所以这是我的问题,我有一个API设置,以JSON字符串格式返回Azure存储表的结果:
[{
"CustID": "f3b6.....0768bec",
"Title": "Timesheet",
"CalendarID": "AAMkADE5ZDViNmIyLWU3N2.....pVolcdmAABY3IuJAAA=",
"PartitionKey": "Project",
"RowKey": "94a6.....29a4f34",
"Timestamp": "2018-09-02T11:24:57.1838388+03:00",
"ETag": "W/\"datetime'2018-09-02T08%3A24%3A57.1838388Z'\""
}, {
"CustID": "5479b.....176643c",
"Title": "Galaxy",
"CalendarID": "AAMkADE5Z.......boA_pVolcdmAABZ8biCAAA=",
"PartitionKey": "Project",
"RowKey": "f5cc....86a4b",
"Timestamp": "2018-09-03T13:02:27.642082+03:00",
"ETag": "W/\"datetime'2018-09-03T10%3A02%3A27.642082Z'\""
}]
Run Code Online (Sandbox Code Playgroud)
我试图将其转换回Project对象:
public class Project : TableEntity
{
public Project() { }
public Project(string rKey, string pKey = "Project")
{
this.PartitionKey = pKey;
this.RowKey = rKey;
}
public Guid CustID { get; set; }
public string Title { get; set; }
public string CalendarID { get; set; } …Run Code Online (Sandbox Code Playgroud) 我是json的新人.我想要不同用户的信息,并将它们添加到c#(.net development)中的dataGridView 或dataTable或dataSet中.信息样本是(json有效):
{
"JrPwbApfIHbQhCUmVIoiVJcPYv93": {
"address": "Jessore",
"name": "Dev"
},
"iBRZAyn8TQTOgKTcByGOvJjL9ZB3": {
"address": "Bogra",
"name": "Kumar Saikat"
}
}
Run Code Online (Sandbox Code Playgroud)
我希望他们这样:
User1 | 杰索尔| 开发
User2 | Bogra | Kumar Saikat
如果我可以列出所有这些列表,它甚至会有所帮助.
我相信我能够对它们进行反序列化(根本不确定)
var model = JsonConvert.DeserializeObject<user>(json);
用户是一个类.
public class Item
{
public string name;
public string address;
}
Run Code Online (Sandbox Code Playgroud)
从这个问题的答案.在本教程中,如果知道属性,我可以获取值.但在我的情况下,我的属性将是未知的,(字符串"User1","User2"将是随机的,因为我将从数据库中获取它们).任何有关此事的帮助和亮点将不胜感激.先感谢您.