繁体   English   中英

需要知道字符串和列表的POST JSON正文格式 <string> ormlite-servicestack

[英]Need to know POST JSON Body Format for string and List<string> ormlite-servicestack

我需要POST列表和字符串的JSON主体格式的专业帮助。 我已经通过Service Stack开发了JSON和C#Web服务。 我想与字符串“ EmployeeId”一起发布“时间戳”列表。 但是在接收端(Web服务),我只能得到字符串类型'EmployeeId'
列表时间戳为NULL。 我尝试了以下几种方法。

Web服务名称:

http://192.168.1.109/EmployeeDatabase/json/reply/UpdateSyncStatus_EmployeeId_Timestamp

[Route("/UpdateSyncStatus_EmployeeId_Timestamp", "POST")]
public class UpdateSyncStatus_EmployeeId_Timestamp
{
    public string EmployeeId { get; set; }
    public List<string> Timestamp { get; set; } 
}

我正在通过Firefox HttpRequester实用工具发布测试。

我尝试了以下JSON格式的BODY / Content,但没有任何工作正常。 我不知道我在哪里做错:

1。

{"EmployeeId" : "gopsw_15_05_2015_17_17_571"},[{"Timestamp" : "2015-05-18T12:36:04.379"  ,  "Timestamp" : "2015-05-18T12:38:04.379" ,  "Timestamp" : "2016-05-18T12:38:04.379"}]

2。

{"EmployeeId" : "gopsw_15_05_2015_17_17_571"}, Timestamp : ["2015-05-18T12:36:04.379"  , "2015-05-18T12:38:04.379" ]

3。

{"EmployeeId" : "gopsw_15_05_2015_17_17_571"},[{"Timestamp" : "2015-05-18T12:36:04.379"} , {"Timestamp" : "2015-05-18T12:38:04.379"}]

4。

{"EmployeeId" : "gopsw_15_05_2015_17_17_571"},  "Timestamp" : [{"2015-05-18T12:36:04.379"} , {"2015-05-18T12:38:04.379"}] 

5。

{"EmployeeId" : "gopsw_15_05_2015_17_17_571"},  {"Timestamp"} : [{"2015-05-18T12:36:04.379"} , {"2015-05-18T12:38:04.379"}]

6。

{"EmployeeId" : "gopsw_15_05_2015_17_17_571"},  {{"Timestamp"} : [{"2015-05-18T12:36:04.379"} , {"2015-05-18T12:38:04.379"}]}

与此请求DTO匹配的JSON主体:

[Route("/UpdateSyncStatus_EmployeeId_Timestamp", "POST")]
public class UpdateSyncStatus_EmployeeId_Timestamp
{
    public string EmployeeId { get; set; }
    public List<string> Timestamp { get; set; } 
}

应该看起来像:

POST /UpdateSyncStatus_EmployeeId_Timestamp

{"EmployeeId":"gopsw_15_05_2015_17_17_571","Timestamp":["2015-05-18T12:36:04.379","2015-05-18T12:38:04.379"]}

例如,只有1个JSON对象(整个DTO),并且Timestamp只是一个字符串数组。

每当您有疑问并想知道JSON的外观时,都可以序列化对象,例如:

var json = new UpdateSyncStatus_EmployeeId_Timestamp {
    EmployeeId = "gopsw_15_05_2015_17_17_571",
    Timestamp = new []{"2015-05-18T12:36:04.379","2015-05-18T12:38:04.379"}.ToList()
}.ToJson();

json.Print();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM