C#内联初始化IGrouping

Edm*_*g99 5 c# linq

如果我想初始化分组列表,我可以内联吗?

更新上下文

我已经知道我无法初始化接口,但是dotnet中是否已经内置了一个实现?

我不想创建自己的实现,因为我试图将现有的私有方法重构为它自己的公共类,因此我需要传递参数进行单元测试.

void MyMethod(IList<IGrouping<int, MyObject>> objGroupings)
Run Code Online (Sandbox Code Playgroud)

目前我已经使用初始化列表,然后按键分组:

var fooList = new List<MyObject>
{
     new MyObject{ foo = 5 },
     new MyObject{ foo = 5 },
     new MyObject{ foo = 5 },
     new MyObject{ foo = 2 },
     new MyObject{ foo = 2 }
};

var fooGrouping = fooList.GroupBy(o => o.foo).ToList();
Run Code Online (Sandbox Code Playgroud)

Dav*_*ton 7

IGrouping只是一个接口,无法初始化.如果要使用内联初始化,则需要初始化实现的对象IGrouping