2012-03-07 101 views
1

如何更改Json输出中字段名称的名称 我希望类名称cook和字段“time1”是其他内容。我正在使用asp.net mvc控制器类来返回json结果。asp.net mvc json序列化属性

public class Cook 
    { 
     public string time1; 
     public string time2; 
     public string time3; 

    } 

回答

2

什么这样的事情...

public ActionResult GetCook() 
{ 
    var cook = new Cook(); 
    return Json(new 
    { 
     atime = cook.time1, 
     anothertime = cook.time2, 
     yetanothertime = cook.time3 
    }); 
} 
+0

我有一些特殊字符的名称,我不能把它作为属性名称。 – pili 2012-03-07 03:16:49

+0

如果您想要更好的答案,您可能想要更具体地了解您想要获得的内容。最后,您可能需要写出自己的JSON。格式非常简单(http://www.json.org/)。 – Brian 2012-03-07 03:40:56

0

您可以编写自定义的属性和访问,通过ViewData.ModelMetadata值(请确保您的属性类实现IMetadataAware)。然后创建您自己的JSON类,将您的所有属性及其值放入字典中。每个属性的关键字将是您在自定义属性中指定的名称。

这可能听起来有点隐晦,但如果你认为你喜欢这个approuch,我可以给你一个代码示例。祝你好运!