【问题标题】:troubles creating a List of doubles from a list of objects从对象列表创建双打列表的麻烦
【发布时间】:2010-05-20 09:58:27
【问题描述】:

我有一个包含对象的列表。该对象有一个属性“Sales”,它是一个字符串。 现在我想创建一个包含所有对象的“销售”属性值的双精度列表。

我试过这个: var tmp = from n in e.Result select new{ Convert.ToDouble (n.Sales) };

但这给了我这个错误:

错误 106 无效的匿名类型成员声明符。必须使用成员分配、简单名称或成员访问来声明匿名类型成员。

编辑:首先我在没有转换的情况下尝试了它,但后来我有一个匿名类型列表(不是字符串),我也无法将它转换为双精度列表....

【问题讨论】:

    标签: c# linq


    【解决方案1】:

    以下将为您提供双打列表。

    List<double> listOfDoubles = (from n in e.Result
                                  select Convert.ToDouble(n.Sales)).ToList();
    

    【讨论】:

      【解决方案2】:

      将您的代码更改为:

      var tmp = from n in e.Result select new{Value = Convert.ToDouble ( n.Sales) };
      

      您需要为匿名类型定义一个属性名称:即“Value = blah

      【讨论】:

        【解决方案3】:

        试试这个:

        var tmp = from n in e.Result select new{ Sales = Convert.ToDouble ( n.Sales) };
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-02-24
          • 2017-06-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多