2009-04-03 7 views
0

Je valide les données d'une table créée dans le concepteur linq dans l'événement OnValidate.L'événement OnValidate de Linq n'est pas déclenché

Cet événement est déclenché lorsque j'insère des enregistrements, mais pas lorsque je mets à jour des enregistrements.

Je possède ce code:

public bool Save(int id, string marca, string modelo, string año, string motor, 
    bool disponible, RuleList issues) 
{ 
    Usado u; 
    if (id == 0) 
    { 
     u = new Usado(); 
     u.IdUsado = GetNextIdUsado(); 
     u.FechaCreacion = DateTime.Now; 
    } 
    else 
    { 
     u = GetUsadoById(id); 
    } 
    u.Marca = marca; 
    u.Modelo = modelo; 
    u.Año = año; 
    u.Motor = motor; 
    u.Disponible = disponible; 
    if (id == 0) 
    { 
     DataBase.Usados.InsertOnSubmit(u); 
    } 
    return Execute(issues, DataBaseOperation.Save); 
} 

Lorsque id est égal à zéro, je fais un insert, sinon je fais une mise à jour.

Pourquoi cela est-il possible? Merci d'avance pour tout indice.

+0

Pouvez-vous poster un code? Cela devrait vraiment fonctionner. – tvanfosson

Répondre

0

Votre mise à jour entraîne-t-elle un objet modifié ou attribuez-vous toutes les valeurs qui étaient identiques aux valeurs d'origine? Vous devrez peut-être vous assurer que certaines valeurs sont différentes pour que LINQ puisse faire quoi que ce soit. Vérifiez les modifications avec GetChangeset(). Updates.Count. (Où est votre SubmitChanges?)

Questions connexes