【发布时间】:2020-08-04 10:55:29
【问题描述】:
请我正在使用Entity Framework 处理ASP.NET MVC 项目,并且在函数中我希望它返回由模型结构化的数据(我使用 LINQ 查询来检索函数将返回的数据 )。
当LINQ 查询有数据时一切都很好,但是当LINQ 查询没有数据时我得到了这个错误:
错误:
序列不包含任何元素
功能:
public static List<ABS_model> SELECT_Related_With_STG_Details(string STG)
{
var R = (from A in SCHOOL_DB_Context.Con.ABS
join S in SCHOOL_DB_Context.Con.STGs on A.STG_ABS equals S.CD_STG
join U in SCHOOL_DB_Context.Con.UFs on A.UF_ABS equals U.CD_UF
where A.STG_ABS == STG
select new ABS_model {
N_ABS = A.N_ABS,
STG_ABS = A.STG_ABS,
NM_STG = S.NM_STG,
PRN_STG = S.PRN_STG,
DT_ABS = A.DT_ABS,
UF_ABS = U.NM_UF,
INTTL_UF = U.NM_UF,
JSTF_ABS = A.JSTF_ABS,
JSTF_DOC_ABS = A.JSTF_DOC_ABS
}
).ToList();
return R;
}
所以如果 Query 没有记录(如果可以的话),我想返回 Null 模型。
所以请帮忙?
【问题讨论】:
-
return R.Any() ? R : null -
非常感谢兄弟,这对我有帮助,但我有一个问题如果我在查询的最后一个使用
.Single()并得到相同的错误,您可以为我建议任何解决方案吗? -
Enumerable.Single Method :返回序列的单个特定元素。 → 所以它需要一个非空集合
-
根据您的要求使用
.SingleOrDefault()或.FirstOrDefault()。检查此以获取更多详细信息stackoverflow.com/questions/1745691/…
标签: c# asp.net-mvc entity-framework linq