0

我正在用 linq 编写查询(按照下面的代码)。我正在寻找来自 db.iovel 的数据,并为每个数据带来一张嵌套在 db.fotoivel 中的图片。请记住,对于每个 db.ivel 数据,我可能有不止一张图片。

问题是当我运行时,它会返回所有图片中所有具有相同 db.ivel 数据的图片。

如果从 db.fotoimovel 仅返回一个(可能是第一张图片)的 db.iovel 数据,它对我有用。

代码:

var retorno = (from c in db.fotoimovel
                    join p in db.imovel on c.idImovel equals p.idImovel
                    where p.MetragemImovel >= metragem1 && p.MetragemImovel <= metragem2 &&
                    p.StatusImovel == opcao && 
                    ((String.IsNullOrEmpty(bairro)) || p.BairroImovel == bairro) &&
                    ((imovel == null) || (p.TipoImovel == imovel)) &&
                    ((carros == null) || (p.QtdVagaGaragemImovel == carros)) &&
                    ((quartos == null) || (p.QtdQuartoImovel == quartos))
                    select new DadosImovel
                    {
                        Id = p.idImovel,
                        Titulo = p.TituloImovel,
                        Descricao = p.DescricaoImovel,
                        Foto = c.NomeFotoImovel,
                        TipoImovel = p.TipoImovel,
                        Endereco = p.EnderecoImovel,
                        Complemento = p.ComplementoImovel,
                        Bairro = p.BairroImovel,
                        Cidade = p.CidadeImovel,
                        Estado = p.EstadoImovel,
                        CEP = p.CEPImovel,
                        MetragemImovel = p.MetragemImovel,
                        QtdComodoImovel = p.QtdComodoImovel,
                        QtdQuartoImovel = p.QtdQuartoImovel,
                        QtdBanheiroImovel = p.QtdBanheiroImovel,
                        QtdVagaGaragemImovel = p.QtdVagaGaragemImovel,
                        QtdAndarImovel = p.QtdAndarImovel,
                        Status = p.StatusImovel,
                        Ativo = p.AtivoImovel
                    }).Distinct().ToList();
4

0 回答 0