Учитывая следующий класс DTO:
public class DistrictDetailDTO
{
public DistrictDetailDTO()
{
}
public int Id { get; set; }
public string CountyFP { get; set; }
public long? EstStudentPop { get; set; }
public string Name { get; set; }
public short? Ranking { get; set; }
public string RANumber { get; set; }
public long? SchoolCount { get; set; }
public string Coop { get; set; }
public string County { get; set; }
public virtual DirectorDTO Director { get; set; }
public virtual AddressDTO Address { get; set; }
}
Следующий запрос LINQ не возвращает никаких результатов, если свойство района Coop имеет значение null...
var district = from districts in _ctx.District
where districts.Id == id
select new DistrictDetailDTO
{
Id = districts.Id,
CountyFP = districts.County.FIPSCode,
EstStudentPop = districts.EstStudentPop,
Name = districts.Name,
Ranking = districts.Ranking,
RANumber = districts.RANumber,
SchoolCount = districts.SchoolCount,
Address = new AddressDTO {
Line1 = districts.Address.Line1,
Line2 = districts.Address.Line2,
City = districts.Address.City,
State = districts.Address.State,
Zipcode = districts.Address.Zipcode
},
Coop = (districts.Coop==null) ? "None" : districts.Coop.Name,
County = districts.County.Name,
Director = new DirectorDTO {
Email = districts.Director.Email,
ImgUrl = districts.Director.ImgUrl,
Name = districts.Director.Name,
Phone = districts.Director.Phone
}
};
Если я удалю свойство Coop из DTO и запрос, который он возвращает, как следует... что я могу сделать, чтобы исправить это? Условный ?: не работает.
District
иCoop
. - person Gert Arnold   schedule 23.10.2015where districts.Id == id
результат зависит от Id, а не от Coop. Вы уверены, что запрос не возвращает результат по каким-то другим причинам? - person Arghya C   schedule 23.10.2015