Фреймворк сущностей не сохраняет данные в БД

Сначала я должен сказать, что эта проблема возникает только в оконных формах приложений, и эта же программа в web-режиме, например, с MVC3 работает идеально.

Несколько дней назад я написал очень простую программу для работы с оконными формами, используя Visual Studio 2010 ultimate с базой данных SQL Express. Я добавил базу данных, выбрав Добавить > Новый пункт > Сервисная база данных и модель данных сущности на основе этой базы данных таким же образом. Я использовал фреймворк Entity для добавления некоторых новых записей в таблицы. Раньше я делал это с VS 2008 SP1 без проблем, поэтому я сделал то же самое. Программа компилировалась и работала без ошибок, и я ввел несколько новых данных. после выхода из программы я вернулся в базу данных, и ничего не произошло. Ни одна из введенных мною данных не была сохранена. Я отлаживал программу шаг за шагом и все было в порядке. Нижеприведенный код относится к очень простой программе с упомянутой проблемой. В базе данных есть одна таблица (книга):

namespace Book
{
    public partial class BookForm : Form
    {
        BookDatabaseEntities db = new BookDatabaseEntities();

        public BookForm()
        {
            InitializeComponent();
        }

        private void saveButton_Click(object sender, EventArgs e)
        {
            Book bookToCreate = new Book();

            bookToCreate.Id = Guid.NewGuid();
            bookToCreate.Title = titleTextBox.Text;

            db.Books.AddObject(bookToCreate);
            db.SaveChanges();
        }
    }
}

Я буду очень благодарен, если кто-нибудь мне поможет. Заранее спасибо.

.................

After editing:

namespace Book
{
    public partial class BookForm : Form
    {
        //BookDatabaseEntities db = new BookDatabaseEntities();

        public BookForm()
        {
            InitializeComponent();
        }

        private void saveButton_Click(object sender, EventArgs e)
        {
            var db = new BookDatabaseEntities();
            var bookToCreate = db.Books.CreateObject();

            //Book bookToCreate = new Book();

            bookToCreate.Id = Guid.NewGuid();
            bookToCreate.Title = titleTextBox.Text;

            db.AcceptAllChanges();
            db.Books.AddObject(bookToCreate);
            db.SaveChanges();
        }
    }
}
5
задан Monoloox 7 September 2011 в 10:03
поделиться