如何将元素添加到列表中
本文关键字:列表 添加 元素 | 更新日期: 2023-09-27 18:31:15
我想将此行添加到我的列表中,但是当我放置此消息时,错误results.Add("TOUT");
如何将 TOUT 添加到列表中
这是我想添加新元素时的方法
dynamic results = (from ta in db.client
select new
{
Name= ta.Name
}).Distinct().ToList();
有人可以帮我解决这个问题,谢谢你的帮助
不能将string
添加到列表中,因为您没有创建字符串列表。您正在创建匿名类型的实例列表。
几乎从不需要创建只有一个属性的匿名类型,因此只需选择字符串:
(from ta in db.client select ta.Name).Distinct().ToList()
或者只是
db.client.Select(ta => ta.Name).Distinct().ToList()
这将创建一个List<string>
。(假设 ta.名称是string
)
Linq 不是为了支持数据操作而创建的,而是为了支持数据查询。因此,您必须在可以添加元素的任何类型的列表中显示结果。例如:
var results = (from ta in db.client
select new
{
Name= ta.Name
}).Distinct().ToList();
现在,您可以通过创建共享所需属性的匿名实例来简单地添加元素。
results.Add(new { Name = "TOUT" });
请注意,此处不需要关键字 dynamic
,因为返回的列表已经是强类型(尽管程序集中没有类定义,但定义驻留在临时程序集中,其中类型称为 anonymous
)。
编辑:为了简化事情,您还可以完全省略匿名类型并仅选择name
。
所以而不是
select new { ... }
你写
select ta.Name
因此,您将获得一个字符串列表,您可以在其中简单地将最后一个元素添加到TOUT
。