序列化为JSON Linq选择结果" WhereSelectArrayIterator"

时间:2014-04-23 13:48:39

标签: c# json linq

我只需要序列化办公室的一些字段,只需要名称和ID

public IEnumerable<Office> Offices;

public string SerializedPointOffices
{
    get { return JsonConvert.SerializeObject(Offices ); }
}

我有一个Linq选择

 IEnumerable<MyObj>  offices = GetAllOffices();
 var test = offices.Select(t => new { t.OfficeName, t.OfficeID});

如何序列化此test

测试类型为WhereSelectArrayIterator

1 个答案:

答案 0 :(得分:0)

我不完全确定你的问题,但是,假设你想要将一个数组或匿名类型列表序列化为JSON,它非常简单。

如上:

var test = offices.Select(t => new { t.OfficeName, t.OfficeID});
string str = JsonConvert.SerializeObject(test);

您还可以在office对象上使用“数据合同”序列化注释,以便在序列化对象时仅序列化所需的字段。就个人而言,我更喜欢这种方式,因为我不喜欢通过线路发送匿名类型,我喜欢有一个强烈定义的界面。