Поясню название.
Я использую Entity Framework Code First в приложении(Тестовое Приложение). В целях отладки TestApp подключается к серверу центральной базы данных SQLExpress ().
Для простоты здесь база данных содержит одну таблицу «Продукты», а TestApp показывает все «Продукты» из базы данных в сетке данных, и TestApp может добавлять/удалять «Продукт» или изменять ProductName.
public class Product {
public int ProductId { get; set; }
public string ProductName { get; set; }
}
public DbSet<Product> Products { get; set; }
Например, у меня есть 3 компьютера, на которых установлено и запущено приложение TestApp (. Я назову их Client _X ). Если я добавлю новый «Продукт» через Клиент _1, это не будет видно напрямую в TestApp на Клиенте _2 и Клиенте _3. Только когда Клиент _2 и Клиент _3 снова получить все данные (обновить вручную ), после чего я увижу только что добавленную запись.
Что я хочу знать :Как узнать об изменениях в базе данных через EF Code First? Каким образом клиент _2 и клиент _3 смогут автоматически обновлять свою сетку данных при добавлении или удалении нового элемента?
Я не уверен, что это слишком много, но простой пример проекта или простой код для демонстрации этого были бы полезны.
К вашему сведению :Я новичок в EF Code First. (Я использую.NET 4.0 и EF Code First 4.3.1)
Заранее спасибо.
Схема:
Client_3<
\
\
\
\
\>
Client_1 <---> [Central Database] <----> Client_2
Обновить/редактировать:
Хорошо, ясно, что сама Entity Framework не выполняет синхронизацию между несколькими клиентами.
Так что я задам еще один вопрос: Я думаю о том, чтобы работать с клиентом -сервером :
Несколько клиентов, которые взаимодействуют с этим единственным сервером заявление.
Что теперь было бы лучшим способом убедиться, что клиенты используют одни и те же данные и видят обновления/изменения друг друга? (Буду признателен за примеры кода.)