这是我的代码片段:
using (var uow = new UnitOfWork())
{
//ItemType itself
ItemType itemType1 = uow.ItemTypeRepository.Get(i => i.Name == "ServerTypeList").FirstOrDefault();
Assert.IsTrue(itemType1.ID != null);
var itemType2 = uow.ItemTypeRepository.Get(i => i.Name == "ServerTypeList", orderBy: o => o.OrderBy(d => d.Name), includeProperties: "Items");
//itemType2[0].
...
我试图列出itemType2中的所有项目(“Get”方法返回一个IEnumerable):
答案 0 :(得分:0)
itemType2.First().Items[0]
出了什么问题?
这是有效的,因为itemType2
是一个序列。根据您在调试器中看到的内容,它只有一个元素。如果总是只有一个元素,那么您应该使用itemType2.Single().Items[0]
代替。
此序列的每个元素都有一个Items
属性,它似乎是一个列表或数组或其他可以编入索引的属性,所以一旦你到达那里,你可以索引它,如上所述,或者你可以迭代它:
foreach (var item in itemType2.Single().Items)
{
// Do something with each item in the sequence
}