Может ли WPF легко работать с наборами данных ADO.NET? - PullRequest
0 голосов
/ 22 февраля 2011

Я скоро приступлю к преобразованию одного из наших старых, унаследованных приложений из VB6 в WPF.Более года назад я потратил значительное количество времени на преобразование компонентов VB6 среднего уровня (все в Службах компонентов) в WCF.В то время, когда я это делал, я написал все методы для возврата наборов данных ADO.NET.Он отлично работает, и, написав простое приложение для WinForms, я смог успешно извлечь некоторые данные и сохранить их обратно.И я не касался этой службы WCF в течение нескольких месяцев.Я написал службу WCF, используя VS 2008.

Я был занят другими обязанностями и другими неотложными проектами в течение 2010 года, поэтому этот проект конверсии был отложен до сих пор.Одним из этих других проектов была разработка простого приложения WPF, чтобы научиться писать приложения WPF.Это простое приложение WPF теперь используется нашими сотрудниками фронт-офиса.Для этого основного конверсионного приложения я буду использовать VS 2010, но я знаю, что WCF 3.5 и WPF 4.0 будут работать вместе, это не проблема.Но что меня беспокоит, так это тот факт, что все методы WCF возвращают наборы данных ADO.NET.Изучая WPF и разрабатывая приложение для фронт-офиса, я разработал классы, отражающие данные в базе данных SQL Server, чтобы мои классы могли реализовывать интерфейс INotifyPropertyChanged.Ну, конечно, мои классы WCF не реализуют интерфейс INotifyPropertyChanged.Теперь, когда у меня есть возможность взглянуть на все это с точки зрения высокого уровня, я обеспокоен тем, что я в основном выстрелил себе в ногу (эй, я был в неведении и не знал ничего лучше).Итак, так ли это, что любое написанное мною приложение WPF не будет идеально работать с наборами данных ADO.NET, возвращенными моей службой WCF?


1 Ответ

1 голос
/ 22 февраля 2011

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

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

С другой стороны, вы можете создавать классы-оболочки для наборов данных ADO.NET, которые реализуют метод INotifyPropertyChanged. По сути, это сводится к реализации того же кода из предыдущей идеи, но это может выглядеть намного лучше и создать намного более чистую кодовую базу.

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