Actualmente estoy tratando de hacer una consulta anidada en LINQ, pero estoy recibiendo un mensaje de error:consulta anidada LINQ, mensaje de error
var subcatquery = from categories in mydb.Categories
where categories.ParentId == null
select new
{
category = categories.Name,
subcat = (from sub in mydb.Categories
where sub.ParentId == sub.Id
select new
{
subcatItem = sub.Name,
subcatId = sub.Id
})
};
Resultados Ver = The type '<>f__AnonymousType0<subcatItem,subcatId>' exists in both 'myapplication.dll' and 'System.Web.dll'
No puedo underestand qué ... si elimino la consulta secundaria y la pongo en su cuenta ... está perfectamente bien.
el tipo subcat
es un collection<>
, ¿es aquí donde está el problema?
class categoryGroup
{
public string category;
public Collection<subcategoryGroup> subcat;
}
class subcategoryGroup
{
public string subcatItem;
public int subcatId;
}
lo que usted está tratando de hacer así que en subcat? ¿puede por favor elaborarlo ... pensé que podría querer la unión interna i n subcat entre ParentID e Id ... ¿no es así? – Usman
en su consulta secundaria, obtiene el nombre de subcatitem y subcategoría y utiliza en ambas consultas el mismo nombre de tabla ?? – Rajpurohit
@Rajpurohit Sí ... es una tabla relacional que apunta a sí misma. Debo señalar que estoy consultando la misma mesa. – user1655940