I am trying to parse the following JSON data structure:
{
Command: "somecommand",
ContractNo: "11111111",
DocsFiles: [{DocumentID: "01", Files: [{DocKey: "Key01", PrimKey: "PKey01"},
{DocKey: "Key01", PrimKey: "PKey02"}],
{DocumentID: "02", Files: [{DocKey: "Key02", PrimKey: "PKey03"},
{DocKey: "Key02", PrimKey: "PKey04"}]]
}
This is a code:
public class Result
{
public string DocumentID {get; set;}
public List<Files> FilesList {get; set;}
public class Files
{
public string DocKey {get; set;}
public string PrimKey {get; set;}
}
}
private void shareDocumentFiles(RequestContext pContext)
{
try
{
string vContractNo = pContext.JsonParameters["ContractNo"].ToString();
var vFiles = pContext.JsonParameters["DocsFiles"].ToString();
var results = JsonConvert.DeserializeObject<List<Result>>(vFiles);
...
I can get "DocumentID" value, but cannot get "DocKey", or "PrimKey" values.
var DocID = results[0].DocumentID;
Please help to solve this.
[]). If you do that, then you need to change your C# to matchpublic List<Files> FilesList {get; set;}topublic List<Files> Files{get; set;}or use annotation forFilesListproperty like[JsonProperty(PropertyName="Files")]. becauseFilesListnot match any property in your json.