我有匿名类型,我从我的数据库中获取的列表:创建一个新的匿名类型列表工会在现有的匿名类型列表
var takenChannels = (from b in bq.GetStuff(db)
where b.RecordType == "H" && b.TourStartDateTime.Date == date
select new { Start = b.TourStartDateTime, End = b.TourEndDateTime, Channel = b.RadioChannel, TourArea = b.TourArea }).ToList();
然后用这个表信息做一些东西在foreach循环。当我回到循环中时,我想添加一个新的匿名项目。
喜欢的东西:
takenChannels.Union{new[] { new{Start = DateTime.Now, End = DateTime.Now.AddDays(1), Channel = 25, TourArea = "Area" }});
显然,这是行不通的。我该怎么做?
编辑1:
takenChannels.Add(new { Start = s, End = e, Channel = channel, TourArea = booking.TourArea });
这是我走到这一步(感谢丹尼尔)最接近的...但我得到的错误是:
错误6论证1:无法从'AnonymousType#2'转换为'AnonymousType#1'
'显然,这并不work.'不,这不是很明显。这是否会产生错误?如果是这样,什么?我不会怀疑它不起作用。请注意,'Union'不会改变列表,它会创建一个新的序列,因此您需要将其分配给某些内容以观察结果。 – Servy
对不起,我一直在搞我的代码。这里有2个尝试解决方案的混搭。我编辑了我的Q. – Smithy
属性的类型必须正确匹配。也许其中一个是一个地方的字符串,另一个是int,或者类似的东西。如果你确保你有*完全相同的属性*相同的名称和*完全相同的类型,那么它会工作得很好。 – Servy