複数のIEnumerableリストを組み合わせる方法
-
10-07-2019 - |
質問
IEnumerableプロパティを持つクラス(ClassA)があります。次に、同じプロパティを持つ別のクラス(ClassB)があります。インターフェイス(InterfaceA)を共有しています。 ClassBは基本的に、複数のClassAのコンテナクラスです。 ClassBのプロパティを実装する方法。
interface InterfaceA
{
IEnumerable<int> MyInts
{
get;
}
}
class ClassA : InterfaceA
{
public IEnumerable<int> MyInts
{
get;
private set;
}
}
class ClassB : InterfaceA
{
ClassA[] classAs = new ClassA[10];
public IEnumerable<int> MyInts
{
get
{
//What goes here ?
classAs.SelectMany(classA => classA.MyInts);
}
}
}
LINQ selectステートメントを使用しようとしましたが、機能しません。
編集: よく見えなかったようです。答えはこの質問にあります。 Tの複数のIEnumerablesを集約する方法
編集2: 他の誰かがそれを必要とする場合に備えて、私のために働いたサンプルコードを含めてください。
解決
他のヒント
public IEnumerable<int> MyInts
{
get
{
foreach (ClassA c in classAs)
{
foreach (int i in c.MyInts)
{
yield return i;
}
}
}
}
所属していません StackOverflow