나는 왜이 두 LINQ 쿼리가 다른지, 또는 왜 하나가 작동하지 않는 다른 알고 싶습니다? 분명히 컴파일러는 다르다고 말하지만, 왜 그런지 알 수는 없습니까?왜이 두 LINQ 쿼리가 다른가요? 그들은 같은 것 같을 때
첫 번째 쿼리가 작동하도록하고 싶지만 무엇을해도 상관 없습니다. 작동하지 않습니다.
암시 적 타입 변환 할 수 없습니다 LINQ 쿼리 아래는 나에게의 오류를 제공
, '지능?' 에 'System.Collections.Generic.IEnumerable'
public static IEnumerable<int?> GetTenantFacilityCosts(int? code, DateTime date, int number)
{
return DataContext.Facility_Cost_TBLs.
Where(p => p.Tenant_Code == code &&
p.Code_Date == number &&
p.Date_Year == date.Year &&
p.Date_Month == date.Month).
FirstOrDefault().Tenant_Portion;
}
그러나이 쿼리 아래 내가 얻으려고 노력하고 있고 오류가 발생하지 않는 int
값을 가져옵니다.
int? facilityCost =
DataContext.Facility_Cost_TBLs.
Where(p => p.Tenant_Code == selectedTenant.Tenant_Code &&
p.Code_Date == 10 &&
p.Date_Year == date.Year &&
p.Date_Month == date.Month).
FirstOrDefault().Tenant_Portion;
왜 이러한 두 개의 쿼리가 다르며 처음 올바르게 작동하게 할 수 있습니까?
오류는 당신이'INT를 반환하려는 것을''IEnumerable을을'반환해야하는 방법에서 당신을 알 수 있습니까? . –
germi
'return to'yield returns'로 변경합니다 :) –