Вставка данных в таблицу с автоинкрементным ключом C # .NET Linq to SQL - PullRequest
0 голосов
/ 12 февраля 2010

Я хочу ввести данные в мою таблицу (sql 2008), используя linq to sql:

    public static bool saveEmail(Emailadressen email)
    {
        TBL_Emailadressen saveMail = new TBL_Emailadressen();

        destil_loterijDataContext db = new destil_loterijDataContext();


        saveMail.naam = email.naam;
        saveMail.emailadres = email.emailadres;
        saveMail.lotnummer = email.lotnummer;



        try
        {
            saveMail.naam = email.naam;
            saveMail.lotnummer = email.lotnummer;
            saveMail.emailadres = email.emailadres;

            db.TBL_Emailadressens.InsertOnSubmit(saveMail);

            return true;

        }
        catch (Exception ex)
        {
            Console.WriteLine("Opslaan niet gelukt!" + ex.ToString());
            return false;
        }

    }

По какой-то причине в эту таблицу ничего не добавляется. Моя таблица имеет следующие поля:

ID (Auto incr int)

Наам (varchar50)

lotnummer (varchar50)

emailadres (varchar50)

Мой объект, который я пытаюсь сохранить (saveMail), всегда имеет ID = 0, и я не знаю почему. Я думаю, что мешает мне сохранить в БД?

1 Ответ

7 голосов
/ 12 февраля 2010

Обязательно позвоните SubmitChanges на свой DataContext класс:

using(var dc = new MyDataContext())
{
    saveEmail(new Emailadressen(...));
    dc.SubmitChanges();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...