Tengo una base de datos de deportes con una tabla groupmembers que tienen los campos ID, groupID y memberID. Obtengo el ID de miembro de un cuadro de texto llamado txtRemoveGroupMember y el groupID de una lista de casilla de verificación. Ahora quiero eliminar las filas que tienen tanto groupID como memberID. me han tratado este código:Borrando filas en una tabla con Linq a SQL
foreach(ListItem listItem in cblRemoveMemberFromGroup.Items)
{
int memberid = Convert.ToInt32(txtRemoveGroupMember.Text);
int groupid = Convert.ToInt32(listItem.Value);
var removeFromGroup = from gm in dataContext.GroupMembers
where (gm.memberID == memberid) && (gm.groupID == groupid)
select gm;
dataContext.GroupMembers.DeleteOnSubmit(removeFromGroup);
dataContext.SubmitChanges();
}
pero me sale este error: Error 7 Argumento 1: no se puede convertir de 'System.Linq.IQueryable' a 'GSI_side.GroupMember'
Y este error: Error 6 La mejor coincidencia de método sobrecargado para 'System.Data.Linq.Table.DeleteOnSubmit (GSI_side.GroupMember)' tiene algunos argumentos no válidos
Espero que alguien me ayude a resolver esto.
DeleteOnSubmit requiere un objeto de tipo GroupMember y la consulta linq devuelve IQueryable. Es por eso que están obteniendo el error. Intenta usar removeFromGroup.ToList() en su lugar. – Dinesh