使用Linq返回空字符串到SQL - 没有行的相关表 - ASP.Net MVC

jln*_*thy 5 asp.net-mvc linq-to-sql

我与下表有1对多的关系 - 人和电子邮件.当使用linq到sql和ASP.Net MVC时,我想在我的Person视图中使用如下代码显示第一封电子邮件或空字符串:

<%= Html.Encode(Model.Emails.FirstOrDefault().EmailAddress) %>
Run Code Online (Sandbox Code Playgroud)

如果没有电子邮件行,我会收到NullReferenceException.我可以通过使用视图或sproc从SQL返回null安全值,但我想坚持使用泛型linq绑定到表的sql对象.

Mar*_*ers 8

Model.Emails.Select(x => x.EmailAddress).FirstOrDefault() ?? string.Empty
Run Code Online (Sandbox Code Playgroud)