c# - 无法在列表中应用联合LINQ
问题描述
我正在尝试将 LINQ 查询的两个结果与我的DbContext
:
var innerJoin = (from pg in context.TbPlageAccueil
join pf in context.TbPermanence on pg.IdPlageAccueil equals pf.IdPlage
where pf.HeureDebPerm > new DateTime(2016, 10, 1) && pf.HeureFinPerm < new DateTime(2016, 12, 31)
select new{ Libelle_Activite = pg.LibellePlageAccueil, Heure_Debut_Activite = pf.HeureDebPerm, Heure_Fin_Activit = pf.HeureFinPerm }).ToList();
var reunion= (from ru in context.TbReunion select new { Libelle_Activite = ru.IntituleReunion, Heure_Debut_Activite = ru.HeureDebRn, Heure_Fin_Activite = ru.HeureFinRn }).ToList();
当我为这两个结果应用联合时,我得到了这个错误:
CS1929 C# 'List << 匿名类型:字符串 Libelle_Activite,DateTime?Activity_Start_Time,日期时间?Time_Fin_Activit >> Queryable.Union << 匿名类型:字符串 Libelle_Activite,DateTime?Activity_Start_Time,日期时间?Time_Fin_Activite >> (IQueryable <<匿名类型:字符串Activity_Label,DateTime?Activity_Start_Time,DateTime?Time_Time_Time>>,IEnumerable <<匿名类型:字符串Activity_Label,DateTime?Time_Time_Time>>,IEnumerable <<匿名类型:字符串Activity_Label,DateTime?Time_Time_Activity >>, DateEnime?<< 匿名类型:字符串 Libelle_Activite, DateTime?Time_Debut_Activite, DateTime?Time_End_Activite
我做错了什么?如何解决这个问题?
解决方案
Heure_Fin_Activit
您已经在中定义了一个属性innerJoin
,而它Heure_Fin_Activite
在 中reunion
。您需要确保它们具有相同的名称和类型:
var reunion= (from ru in context.TbReunion select new
{ Libelle_Activite = ru.IntituleReunion,
Heure_Debut_Activite = ru.HeureDebRn,
Heure_Fin_Activit = ru.HeureFinRn }).ToList();
推荐阅读
- json - 为什么我无法解析以下 json?
- ios - Flutter 构建失败 'UserAgent.h' 文件未找到
- arduino - 如何在 ESP8266 中切换云和本地网络之间的连接
- javascript - 在 Ace Editor 中突出显示单词
- airflow - 为什么在 Apache Airflow 中使用 CustomOperator 而不是 PythonOperator?
- c++ - 发送一组自定义数据。我发送的和我收到的不一样
- machine-learning - 是否有任何模型/分类器最适合此类基于 NLP 的项目?
- python - 如何解决错误 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe5 in position 55: invalid continuation byte
- python - Word Mover 的距离与余弦相似度
- git - 从上游 11-base-blog 获取最新更新到我的分叉博客的推荐方法是什么?