linq - type - Tipo anónimo y múltiples propiedades.
retornar objeto anonimo c# (2)
Es necesario proporcionar nombres alternativos para las propiedades duplicadas. Por ejemplo:
select new {
// ... other properties here ...
dt.Name,
dt.ArticleNumber,
dt.Type,
LastStartDate = l.StartDate,
l.LocationNameId,
CurrentLocation = loc.Name
};
Tengo este error: un tipo anónimo no puede tener varias propiedades con el mismo nombre. Si esto se puede resolver con un alias, es decir, si existe un alias en LINQ
var device_query = from d in DevicesEntities.device
join dt in DevicesEntities.devicetype on d.DeviceTypeId equals dt.Id
join l in DevicesEntities.location on d.Id equals l.DeviceId
join loc in DevicesEntities.locationname on l.LocationNameId equals loc.Id
where l.DeviceId == d.Id
select new {
d.Id,
d.DeviceTypeId,
d.SerialNumber,
d.FirmwareRev,
d.ProductionDate,
d.ReparationDate,
d.DateOfLastCalibration,
d.DateOfLastCalibrationCheck,
d.CalCertificateFile,
d.Notes,
d.TestReportFile,
d.WarrantyFile,
d.CertificateOfOriginFile,
d.QCPermissionFile,
d.Reserved,
d.ReservedFor,
d.Weight,
d.Price,
d.SoftwareVersion,
dt.Name,
dt.ArticleNumber,
dt.Type,
l.StartDate, //AS LastStartDate,
l.LocationNameId,
loc.Name //in this line I have problem
};
Es un confligt en "Nombre". Está asignando dt.Name y loc.Name, ambos los cuales el compilador intenta establecer en la propiedad "Nombre" del tipo anon.
cambia uno de ellos por ejemplo, LoationName = loc.Name.
HTH
[editar] Demasiado tarde para golpear enviar :-)