以下是JSON中预期的发布请求格式。谁能告诉我如何实现这一目标。
{
"MywebServiceInputDetail":{
"MyDatalst":{
"MyData":[
{
"name":"TestName",
"id":"2611201",
"SomeRefVal":"REF123456"
}
]
}
}
}
到目前为止,我正在使用JavaScriptSerializer。 下面是代码。
[Serializable]
public struct MyStruct
{
public string name;
public string id;
public string refno;
}
JavaScriptSerializer jss = new JavaScriptSerializer();
string serializedJson = jss.Serialize(ObjMystrcut);
上面的代码将JSON字符串显示为
{"name":"TestName","id":"1234567","refno":"567123"}
我是JSON的新手,所以我无法制定请求格式。
我避免通过对json字符串进行硬编码来实现它。基本上,我试图理解{
和[
包围的含义。
[
意味着我需要创建一个对象数组吗?
答案 0 :(得分:0)
您可以执行以下操作:
string serializedJson = jss.Serialize(new { MywebServiceInputDetail = new { MyDatalst = new { MyData = new[] { ObjMystrcut } } } });
{}是对象表示法,因此它表示具有属性的对象。 []是数组符号。
答案 1 :(得分:0)
是的,int rowCount = driver.FindElements(By.XPath("//div[@class='bodyCells[2]']//div").Count());
Console.WriteLine(rowCount);
和[
符号代表JSON数组(对象的集合)。在您的示例中,]
是您创建的那些结构的集合。
您需要创建以下类:
MyData
现在创建一个MywebServiceInputDetail对象并对其进行序列化。
我个人会忘记使用结构,而只创建以下类:
public class MywebServiceInputDetail
{
public MyDatalst MyDatalst { get; set; }
}
public class MyDatalst
{
public List<MyStruct> MyData { get; set; }
}
public struct MyStruct
{
public string name;
public string id;
public string SomeRefVal;
}
您还应该在属性中添加JSON属性,以确保Name和Id用小写字母序列化。