2013-05-28 45 views
0

我使用Entity Framwork + Wcf Ria Service for Silverlight應用程序。如何把2集合在一起在C#?

假設有在VM定義如下屬性:,說這是CurrentMyEntity,

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

那麼我myEntity所的單個實例和myEntity所的名單,這是一個EntityCollection,說這是MyMyEntityList有2條記錄。

然後我想把它們放在一起並分配給MyEntitys。這意味着MyEntitys應該有3條記錄。

由於IEnumerable是隻讀的,所以沒有Add方法可用。在這種情況下如何在一行代碼或表達式中執行此操作?

回答

2

關於什麼:

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

的毗連不適用於在Silverlight客戶端側EntityCollection。 – KentZhou

+0

Concat是IEnumerableOfT的擴展方法。確保你有「使用System.Linq」。用2行代碼修復了 –

+0

。謝謝。 – KentZhou

1

您可以使用Concat創建一個新的IEnumerable是結合其他兩個序列的結果:

entity.MyEntitys = someCollection.Concat(someOtheCollection);