Событие Linq OnValidate не запускается - PullRequest
0 голосов
/ 03 апреля 2009

Я проверяю данные для таблицы, созданной в конструкторе linq в событии OnValidate.

Это событие возникает при вставке записей, но не при обновлении записей.

У меня есть этот код:

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);
}

Когда id равен нулю, я делаю вставку, в противном случае я делаю обновление.

Почему это могло случиться? Заранее спасибо за любую подсказку.

1 Ответ

0 голосов
/ 04 апреля 2009

Ваше обновление приводит к измененному объекту или вы присваиваете все значения, которые были такими же, как исходные значения? Возможно, вам придется убедиться, что какое-то значение отличается, чтобы LINQ мог что-либо с ним сделать. Проверьте изменения с помощью GetChangeset (). Updates.Count. (Где ваши SubmitChanges?)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...