为了将任意非原始POCO添加到中
JArray,您必须使用以下重载之一显式序列化它
JToken.FromObject():
_JArray = new JArray();string[] amounts = repository.Amounts.Split('|');for (int i = 0; i < amounts.Length; i++){ _JArray.Add(JToken.FromObject( new AmountModel { Amounts = amounts[i], }));}return _JArray;(另请注意,我已更正了
for循环中的结束条件。它是
i <=amounts.Length,导致出现
IndexOutOfRangeException异常。)
工作样本.Net 在这里#1 。
另外,您可以使用LINQ简化代码,方法
JArray.FromObject()是将字符串数组投影为
AmountModel可枚举,然后将整个序列序列化为
JArray一个调用:
var _JArray = JArray.FromObject(amounts.Select(a => new AmountModel { Amounts = a }));在这里样本小提琴2 。



