【问题标题】:Get only values from object仅从对象中获取值
【发布时间】:2019-02-19 04:52:03
【问题描述】:

我被困在一段代码中,我试图将一个对象传递给图表,实际数据以{shop: 'xyz', total: 20} 发送,但图表仅查询{'xyz', 20},事实是,数据来自我数据库中的一个查询,它返回我这 2 个值

List<Object> list = new List<Object>();

while (resSCIPA.Read())
{

    object shopping = resSCIPA["shopping"];
    object total = resSCIPA["total"];

    var item = new
    {
        shopping, 
        total
    };

    list.Add(item);
}
SerieDataListModel seriesAll = new SerieDataListModel()
{
    name = "Preventiva",
    data = list
};

list 将接收{'xyz', 20},我如何才能从我的实际循环中获得这些信息?

【问题讨论】:

  • 如果您不想要总数,请不要在对象中包含总数。换句话说var item = new { shopping };...
  • 不,购物 = xyz,总数 = 20,我需要它们都没有属性名称,只有它们的值
  • 哦,你想让shopping的值作为属性名吗?
  • 那么你不想要一个对象,你想要一个数组。使用数组语义然后var item = new dynamic[] { shopping, total }
  • 感谢@HereticMonkey,动态[] 完成了工作!

标签: c#


【解决方案1】:

因为你想要一个值数组,所以使用数组类型来捕获它们:

var item = new dynamic[] { shopping, total };

如果动态导致问题,则为对象:

var item = new object[] { shopping, total };

【讨论】:

    猜你喜欢
    • 2015-01-11
    • 2011-02-21
    • 2016-01-29
    • 2015-10-05
    • 1970-01-01
    相关资源
    最近更新 更多