2010-10-21 3 views
1

У меня нет опыта создания настольного приложения .NET, все, что я имею в Интернете. Мой друг попросил меня сделать небольшую оценку для небольшого настольного приложения.Обновление настольного приложения .NET в режиме реального времени

Приложение просто отображает список элементов из базы данных. Когда строки удаляются/добавляются из базы данных, их необходимо удалить/добавить из списка на рабочем столе пользователя.

Это делается довольно легко в настольном приложении, или мне нужно делать какие-либо «перезагрузки» каждые X секунд?

+1

как вы можете оценить что-то в том, что у вас нет опыта? – Andrey

+0

Я бы сменил название вопроса здесь - я думал, что речь идет о RELOADING код приложения, а не данные ... может быть, какой-то другой игровой процесс? –

ответ

4

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

Любой дизайн, который позволил бы системе управления базами данных передавать обновления на настольное приложение, будет довольно сложным и (в зависимости от ваших потребностей), скорее всего, будет излишним.

+0

У вас есть пример того, как это сделать? Выполнение этого в Интернете несколько сложно, я хотел бы посмотреть, как это сделать на настольном приложении. – Steven

0

Конкретизируя дизайн Эндрю Заячьем немного, я хотел бы предложить, что вы включили какой-то механизм для «короткого замыкания» цикла обновления, когда происходит взаимодействие с пользователем, то есть

обновляется каждые х секунд И Immediatey если пользователь щелкает элемент управления, который считается критическим и требуемое обновление меньше х записей кРОМЕ , где это приведет к увеличению частоты обновления выше определенного значения дроссельной

в принципе, вы хотите, чтобы дать впечатление o f высокая производительность. Воспринимаемая производительность не означает быстрое выполнение задач, это больше похоже на медленную работу в периоды, которые вы ожидаете, что пользователь будет думать, faffing around или набирать что-то, а не когда они ждут ответа. Очень немногие приложения заняты даже малой частью времени их запуска - любая воспринимаемая медленная производительность проистекает из плохой конструкции, где программа слишком много работает сразу в тот момент, когда пользователь запрашивает ее, требуя от них ждать. Кэширование в фоновом режиме позволяет назначать только минимальный объем работы, чтобы напрямую реагировать на ввод пользователя, улучшая восприятие пользователем производительности.

Попытка быть непосредственно полезным:

Вы утверждаете, что вы используете .NET - что очень удобно. .Net привязка данных очень богата и мощна, и, скорее всего, эта работа станет ветерок.

Однако - читать дальше ...

Существует вероятность того, что он не будет делать именно то, что вы хотите. Именно здесь привязка данных становится огромной болью. Для привязки данных необходимо, чтобы определенные вещи были настроены так, как это хочет .Net, а если нет, то довольно много работы, переопределяющей основные функции так, как вам нужно. В этом случае не стесняйтесь обращаться к документации MSDN и к StackOverflow. Спросите рано, спросите Часто.

Смежные вопросы