我如何整合.DefaultIfEmpty()
擴展方法,所以我不使用使用.DefaultIfEmpty()代替.FirstOrDefault()?的String.Empty;
.FirstOrDefault() ?? String.Empty;
代碼:
(from role in roleList
let roleArray = role.RoleId.Split(new char[] { WorkflowConstants.WorkflowRoleDelimiter })
where roleArray.Length.Equals(_SplittedRoleIdArrayLength) &&
HasAccessToCurrentUnit(roleArray[_UnitIndexInRoleId])
select roleArray[_LevelIndexInRoleId]).FirstOrDefault() ?? String.Empty;
個人而言,我不會。 'DefaultIfEmpty'對枚舉值感興趣,而不是標量值。創建您自己的擴展方法,可能命名爲'FirstOrDefault',並將'T'參數指定爲默認值。 –