Можно ли изменить имя сервера, к которому подключается EF, на лету?
У меня одна и та же база данных на 5 серверах (разные среды, Dev, Test, UAT ...), и я хотел бы написать приложение для панели мониторинга, чтобы по очереди извлекать одну и ту же информацию с каждого сервера, просто выбирая среду из DDL .
Я использую Entity Framework 4 / WPF / C #. Новая коллекция ObservableCollection (context.EntitySet) связана с сеткой данных WPF в XAML. Это отлично работает.
привязка к сетке xaml выглядит следующим образом
<grid:RadGridView ItemsSource="{Binding EPolicies}" IsReadOnly="True" RowDetailsVisibilityMode="VisibleWhenSelected" RowIndicatorVisibility="Collapsed" AutoGenerateColumns="False">
в представлении модели я вызываю следующий код
entities = new EpolicyEntities(environmentConnStr);
customTexts = new ObservableCollection<C_CustomTextType>(from i in entities.C_CustomTextType select i);
languages = new ObservableCollection<C_Language>(from i in entities.C_Language select i);
userTypes = new ObservableCollection<C_UserType>(from i in entities.C_UserType select i);
EPolicies = new ObservableCollection<EPolicy>(from e in entities.EPolicies select e);
entity - это ObjectContext, представляющий базу данных, к которой я подключаюсь
В первый раз все работает нормально, но во второй раз, даже несмотря на то, что я вижу новые значения в объекте EPolicies, сетка не обновляется, как хотелось бы
EPolicies - это свойство, определенное ниже
public ObservableCollection EPolicies
{
получить {вернуть ePolicies; }
задавать
{
ePolicies = значение;
OnPropertyChanged (() => EPolicies);
}
}
Может кто-нибудь помочь мне, пожалуйста?
спасибо
Кто-нибудь делал это?