Параметры для отображения полей из разных баз данных в WPF DataGrid? - PullRequest
1 голос
/ 03 декабря 2010

Я использую .Net 4.0 framework, C #, WPF, EF 4 и FireBird.

У меня есть некоторые данные (номер клиента из нескольких полей) в сетке данных, которая берется из таблицы в одной базе данных FireBird. Во второй базе данных FireBird у меня есть таблица, которая содержит некоторую дополнительную информацию (номер клиента снова, вместе с именем клиента), который мне нужен, чтобы появиться в сетке. В таблицах не более тысячи строк.

Если бы таблицы были в одной базе данных, это было бы тривиально. Однако, поскольку база данных FireBird, которую я использую, не поддерживает объединения между базами данных, я считаю, что мне придется объединять данные на уровне приложения.

В настоящее время я отображаю только ключевые значения в сетке, но мне нужно также показать имя клиента из второй базы данных. Я привязываю сетку данных к списку <>, созданному запросом LINQ к EF.

Я подумал, что мог бы установить вторую модель EF для второй базы данных, а затем изменить запрос LINQ, чтобы объединить содержимое двух таблиц в анонимный класс с обязательными полями.

Я не уверен, какие другие варианты могут быть доступны для этого.

Я также мог бы устранить проблему, выдвинув нужную таблицу из второй базы данных в первую, чтобы можно было использовать соединение SQL. Это должно быть сделано в другом месте системы и может оказаться предпочтительным решением, но я не хочу идти туда без предварительной оценки других решений.

1 Ответ

0 голосов
/ 07 декабря 2010

Я пошел дальше и настроил вторую модель сущности для второй базы данных.Я установил класс, который будет содержать экземпляры модели сущностей и обрабатывать взаимодействия между базами данных (некоторые из них выполняются с помощью свойств частичных классов для моделей сущностей).Представление модели обрабатывает данные по существу как единую базу данных.Когда мы переходим к переносу этих вещей на SQL-сервер и избавляемся от мусорной базы с двумя базами данных, само приложение не должно сильно меняться.

Единственная проблема, с которой я столкнулся до сих пор, заключается в том, что янужно быть осторожным при настройке запросов linq, объединение сущностей из двух моделей в одном запросе иногда приводит к ошибкам.Не трудно обойтись, хотя.

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