2012-09-18 76 views
0

的特定值我有責任管理類,它包含了一些子類 下面是類: -過濾器列表與

public class Responsibility 
{ 
    private Frequency _FrequencyInfo = new Frequency(); 
    private ResponsibilityCategory _CategoryInfo = new ResponsibilityCategory(); 
    private Status _StatusInfo = new Status(); 

    public int ResponsibilityId { get; set; } 
    public string ResponsibilityName { get; set; } 
    public string Description { get; set; } 
    public Frequency FrequencyInfo 
    { 
     get { return _FrequencyInfo; } 
     set { _FrequencyInfo = value; } 
    } 
    public ResponsibilityCategory CategoryInfo 
    { 
     get { return _CategoryInfo; } 
     set { _CategoryInfo = value; } 
    } 
    public Status StatusInfo 
    { 
     get { return _StatusInfo; } 
     set { _StatusInfo = value; } 
    } 
} 

下面是我使用綁定list.But我得到的代碼班上所有的元素。 我只是想要兩個班級的元素。

Responsibility newResponsibilty = new Responsibility(); 
     newResponsibilty.ResponsibilityId = ResponsibilityId; 
     new iNGRID_Data.Ops.DataMethods().dbrGetResponsibilityDetailsInSpecifiedResponsibilty(ref newResponsibilty, ResponsibilityId, ref err); 
     List<Responsibility> listResponsibilty = new List<Responsibility>(); 
     listResponsibilty.Add(newResponsibilty); 

     JavaScriptSerializer jsonserialize = new JavaScriptSerializer(); 
     string result = jsonserialize.Serialize(listResponsibilty); 
     return Content(result); 

我想序列化這個列表只有2個對象ResponsibiltyName和Description。 請建議。

回答

1

請勿手動JSON序列化它們。通過返回Json結果留給框架。你也不需要列表。你可以返回一個包含您感興趣的屬性的匿名對象:

public ActionResult SomeAction() 
{ 
    Responsibility newResponsibilty = new Responsibility(); 
    newResponsibilty.ResponsibilityId = ResponsibilityId; 
    new iNGRID_Data.Ops.DataMethods().dbrGetResponsibilityDetailsInSpecifiedResponsibilty(ref newResponsibilty, ResponsibilityId, ref err); 
    var result = new 
    { 
     name = newResponsibilty.ResponsibiltyName, 
     description = newResponsibilty.Description 
    }; 
    return Json(result, JsonRequestBehavior.AllowGet); 
} 

和你的AJAX成功回調裏面,你可以閱讀這些屬性:

success: function(result) { 
    // you could use result.name and result.description here 
} 
+0

我覺得他縫補只有兩個屬性:ResponsibiltyName和說明。 –

+0

我希望班級的特定對象不是隨機的2. – vishal

+0

查看我更新的答案。 –