zoukankan      html  css  js  c++  java
  • Linq返回指定类型

    1.

    public IEnumerable<RiskInfo> GetRisksByUsername()
    {
    AuroraDataContext db = new AuroraDataContext();
    var list = db.GetRisksByUsername().Select(c => new RiskInfo { Number = c.Number, Name = c.Name });

    return list;
    }

    public class RiskInfo
    {
    public int? Number { get; set; }
    public string Name { get; set; }
    }

    2.

    下面给出个简单的例子:

     

    publicinterface IStockStatistics
    {
    IT_Modelnumber ModelNumber {
    get; set; }
    int TotalAmount { get; set ;}
    }
    public class StockStatistics:IStockStatistics 
        {
            private int _id;
            private IT_Modelnumber  _model;
            private int _amount;
    
            public int Id
            {
                get{return _id  ;}
                set{_id =value ;}
            }
            public IT_Modelnumber ModelNumber
            {
                get { return _model; }
                set { _model = value; }
            }
            public int TotalAmount
            { 
                get { return _amount; }
                set { _amount = value; }
            }
        }
    public ICollection<IStockStatistics > GetStatistics()
             {
                  var result = from p in Database.StockDS
                               group p by p.ToModelnumber into g
                               select new StockStatistics
                               {
                                   Id = g.Key.Id,
                                   ModelNumber = g.Key,
                                   TotalAmount = g.Sum(p => p.Amount)
                              };
                 return result.AsEnumerable().Cast<IStockStatistics>().ToList().AsReadOnly();
             }

     简单的说这个方法就是将原本匿名的类型转换成我们已知的类型,但这个类型不存在,所以需要我们先进行定义。

    select new StockStatistics :new 后面的类型有些资料中省略了,但我在自己的环境中省略后编译没有通过。

     
     
  • 相关阅读:
    JavaScript内部原理:浏览器的内幕
    DOM结构深度优先遍历(二):TreeWalker
    DOM结构深度优先遍历(一):NodeIterator
    Linux bc 命令
    两个小function实现XML和string相互转化
    Git 多用户配置
    Vue 新增的$attrs与$listeners的详解
    CSS mask遮罩
    flask之后端传值给前端
    python cv2在验证码识别中的使用
  • 原文地址:https://www.cnblogs.com/cw_volcano/p/2331574.html
Copyright © 2011-2022 走看看