J'ai juste une situation très simple où tout ce dont j'ai besoin est de supprimer l'enregistrement en utilisant Linq2Entities. J'ai essayé de faire des recherches et je n'arrive toujours pas à trouver la bonne façon de le faire.Un bon moyen de supprimer l'enregistrement dans LINQ aux entités
Voici mon code simple:
[DataObjectMethod(DataObjectMethodType.Delete)]
public void DeleteEmployee(Employee z)
{
using (var ctx = new MyEntity())
{
var x = (from y in ctx.Employees
where y.EmployeeId == z.EmployeeId
select y).FirstOrDefault();
ctx.DeleteObject(x);
ctx.SaveChanges();
}
}
[DataObjectMethod(DataObjectMethodType.Select)]
public List<Employee> GetAllEmployee()
{
using (var ctx = new MyEntity())
{
var x = from y in ctx.Employees
select y;
return x.ToList();
}
}
je peux supprimer un enregistrement particulier si par exemple j'attribue y.EmployeeName == "Harold Javier" à la méthode Delete ci-dessus, mais quand j'attribue y .EmployeeId == z.EmployeeId au code ci-dessus, la suppression ne fonctionne pas. (Remarque: EmployeeId est la clé primaire de la table Employé)
Quel est le problème avec votre code? Des erreurs?postez-les si c'est le cas. –
Nous pouvons compiler le code et cela semble correct. Mais lorsque nous l'utilisons avec ObjectDataSource (WebForm ASP.NET), le bouton Supprimer ne fonctionne pas. –
Essayez 'ctx.Employees.DeleteOnSubmit (x)' au lieu de 'ctx.DeleteObject (x)' – MarcinJuraszek