如何从枚举中的数据创建对象列表?
How can I create a list of objects from data in an enum?
我的应用程序有这个代码
var result = await db.ContentTypes
.Select(e => new
{
Id = e.ContentTypeId,
Name = e.Name
})
.AsNoTracking()
.ToListAsync();
它从 SQL 服务器 table 获取数据并使用 Id
和 Name
创建对象列表。这很好用,我用它从许多 table 中获取参考数据。
然而,有一个数据集合存储在枚举中:
public enum ERole {
Super = 0,
Admin = 1,
....
Guest = 8
}
我知道我可以对解决方案进行硬编码,而不是让两个硬编码结构保存角色信息。
如何从枚举中获取数据并将其放入具有 ID 和名称的列表中,就像我对内容类型所做的那样?
如果我没看错你想要这样的东西:
Enum.GetValues(typeof(ERole))
.Cast<ERole>()
.Select(x => new { Id = (int)x, Name = x.ToString() })
.ToList();
我的应用程序有这个代码
var result = await db.ContentTypes
.Select(e => new
{
Id = e.ContentTypeId,
Name = e.Name
})
.AsNoTracking()
.ToListAsync();
它从 SQL 服务器 table 获取数据并使用 Id
和 Name
创建对象列表。这很好用,我用它从许多 table 中获取参考数据。
然而,有一个数据集合存储在枚举中:
public enum ERole {
Super = 0,
Admin = 1,
....
Guest = 8
}
我知道我可以对解决方案进行硬编码,而不是让两个硬编码结构保存角色信息。
如何从枚举中获取数据并将其放入具有 ID 和名称的列表中,就像我对内容类型所做的那样?
如果我没看错你想要这样的东西:
Enum.GetValues(typeof(ERole))
.Cast<ERole>()
.Select(x => new { Id = (int)x, Name = x.ToString() })
.ToList();