如何将2个集合放在c#中?

时间:2013-05-28 17:32:45

标签: c# entity-framework silverlight-5.0 wcf-ria-services

我为Silverlight应用程序使用Entity Framwork + Wcf Ria Service。

假设在VM中定义了一个属性,如:

  private IEnumerable<MyEntity> _myEntitys;
        public IEnumerable<MyEntity> MyEntitys
        {
            get { return _myEntitys;}
            set
            {
                if _myEntitys;!= value)
                {
                    _myEntitys;= value;
                    RaisePropertyChanged("MyEntitys");
                }
            }
        }

然后我有一个MyEntity实例,说它是CurrentMyEntity,还有一个MyEntity列表,它是一个EntityCollection,说它是带有2条记录的MyMyEntityList。

然后我想把它们放在一起并分配给MyEntitys。这意味着MyEntity应该有3条记录。

由于IEnumerable是readonly,因此没有Add方法可用。如何在这种情况下在一行代码或表达式中执行此操作?

2 个答案:

答案 0 :(得分:2)

怎么样:

MyEntitys = MyEntityList.Concat(new[] {CurrentMyEntity});

答案 1 :(得分:1)

您可以使用Concat创建新的IEnumerable,这是组合其他两个序列的结果:

entity.MyEntitys = someCollection.Concat(someOtheCollection);