2013-02-28 2 views
0

мне нужен мой ответ, чтобы выглядеть следующим образом (JSON массив внутри объекта):Попытка получить правильный формат JSON из asp.net Web API отправлять

{"files":[ 
{ 
"name":"3992wp_ss_20130215_0001.jpg","size":102,"url":"/Files/3992wp_ss_20130215_0001.jpg","thumbnail_url":"","de lete_url":"/Files/3992wp_ss_20130215_0001.jpg","delete_type":"DELETE" 
} 
    ]} 

Но я получаю это (JSON массив вокруг объект):

[{"files": 
{"name":"3992wp_ss_20130215_0001.jpg","size":102,"url":"/Files/3992wp_ss_20130215_0001.jpg","thumbnail_url":"","delete_url":"/Files/3992wp_ss_20130215_0001.jpg","delete_type":"DELETE"}} 
] 

Вот мой код:

public IEnumerable<allFiles> Post() 
{ 
    // read data 

    List<DocFile> files = new List<DocFile>(); 

    DocFile file1 = new DocFile(); 
    file1.name = _fileName; 
    file1.size = _lengh; 
    file1.url = "/Files/" + _fileName; 
    file1.thumbnail_url = ""; 
    file1.delete_url = "/Files/" + _fileName; 
    file1.delete_type = "DELETE"; 

    files.Add(file1); 


    allFiles fileCont = new allFiles(); 
    fileCont.files = files; 

    return fileCont; 
} 

public class allFiles 
{ 
    public IEnumerable<DocFile> files { get; set; } 
} 

public class DocFile 
{ 
    public string name { get; set; } 
    public long size { get; set; } 
    public string url { get; set; } 
    public string thumbnail_url { get; set; } 
    public string delete_url { get; set; } 
    public string delete_type { get; set; } 
} 

ответ

2

Я думаю, ваша проблема заключается в возвращении, попытаться вернуть allFiles в позиция.

Что-то вроде:

public allFiles Post() 
{ 
    //read data 

    List<DocFile> files = new List<DocFile>(); 

    DocFile file1 = new DocFile(); 
    file1.name = _fileName; 
    file1.size = _lengh; 
    file1.url = "/Files/" + _fileName; 
    file1.thumbnail_url = ""; 
    file1.delete_url = "/Files/" + _fileName; 
    file1.delete_type = "DELETE"; 

    files.Add(file1); 

    allFiles fileCont = new allFiles(); 
    fileCont.files = files; 

    return fileCont; 
} 
+0

вы его получили! Спасибо! – vts

Смежные вопросы