如何为我的List的每个值设置属性名称?
这是我的名单和我的" foreach"为它
List<object> list = new List<object>();
foreach (var item in db.Pos)
{
list.Add(item.Description);
list.Add(item.Pdv);
list.Add(item.Rid);
list.Add(total);
}
我如何为每个值赋予它一个属性名称,如:Property Description = list.Add(item.Description)
答案 0 :(得分:2)
鉴于你有db.Pos
的对象集合,也许一个字典列表可以帮助你,为样本:
var list = new List<Dictionary<string, object>>();
foreach (var item in db.Pos)
{
var dic = new Dictionary<string, object>();
dic.Add("Description", item.Descripcion);
dic.Add("Pdv", item.Pdv);
dic.Add("Rid", item.Rid);
dic.Add("Total", total);
list.Add(dic);
}
然后你可以尝试阅读一个属性:
var description = list[0]["Description"];
答案 1 :(得分:1)
如果您澄清了要将数据序列化为JSON,请考虑使用匿名类型:
var items = db.Pos.Select(item => new
{
Description = item.Description,
Pvd = item.Pvd,
Rid = item.Rid,
Total = total
});
注意:我不清楚变量“total”的定义...
这应该很好地序列化为一组对象。
答案 2 :(得分:0)
我不确定对象的类是什么,但我写了一个类似于你所拥有的例子,你所要做的只是将学生班级名称替换为你的班级名称。
List<student> students = new List<student>();
foreach (var each in db.students)
{
students.Add(new student
{
id = each.id,
name = each.name,
address = each.address
});
}
假设您拥有以下类
public class student
{
public int id { get; set; }
public string name { get; set; }
public string address { get; set; }
}