无法初始化类型“mydatacollection”;因为它没有实现'System.Collections.IEn

本文关键字:实现 IEn Collections System 因为 类型 初始化 mydatacollection | 更新日期: 2023-09-27 18:16:55

大家好,我正面临上述错误。我想使用edmx从数据库中只检索两列。当运行时,我得到以下错误:

"不能用集合初始化器初始化类型,因为它可以不是实现ienumerable。"

using (DBEntities context = new DBEntities())
{
    IList<myData> objData = null;
    objData = context.EDatas
        .Where(entity => entity.Status == 0 && entity.Id == Id)
        .Select(entity => new myData
        { 
            entity.ID, 
            entity.Key                          
        }).ToList();                  
}

无法初始化类型“mydatacollection”;因为它没有实现'System.Collections.IEn

代替

.Select(entity => new myData
{ 
    entity.ID, 
    entity.Key                          
})

您需要使用正确的myData属性名称:

.Select(entity => new myData
{ 
    ID = entity.ID, 
    Key = entity.Key                          
})

您没有创建匿名类型,编译器认为您正在使用集合初始化语法创建集合。您应该像这样使用属性名称和设置值:

.Select(entity => new myData
                  { 
                       Id = entity.ID, 
                       Key = entity.Key                          
                  }).ToList();