Должен ли я использовать приложение WPF или Windows Forms для своего проекта в C #? - PullRequest
2 голосов
/ 05 апреля 2010
  1. Я разрабатываю приложение клиент-сервер, в котором клиентское приложение будет обращаться к базе данных сервера для хранения платежной информации. Он также будет иметь средство генерации отчетов. Windows Forms хорош в печати документов, и я не вижу такого средства или элементов управления в WPF. Если я ошибаюсь, поправьте меня.
  2. Мне нужна защита базы данных, какую БД мне следует использовать, SQL Server, MySQL или Oracle. Я хотел бы использовать бесплатную БД, но безопасность - мой приоритет.
  3. Подскажите, пожалуйста, как мне реализовать клиент-серверную архитектуру с несколькими клиентами в C #?

Спасибо, Гики !!!

Ответы [ 4 ]

5 голосов
/ 05 апреля 2010
  1. Использование WPF позволит вам предоставить более инновационный пользовательский интерфейс. Приличный обзор высокого уровня Работа с документами в WPF на MSDN .

  2. Любая база данных должна обеспечивать достойную безопасность. Если вы используете C #, я бы порекомендовал одну из версий SQL Server (если у вас работает SQL Server Express ... сделайте это).

  3. Windows Communication Foundation (WCF).

1 голос
/ 05 апреля 2010

1 - WPF - это круто, если вы хотите реализовать приложение для Windows и учитывать свободу, которую оно дает, и разделение забот, которое вы в конечном итоге можете получить, я бы сказал, 100% - с WPF. Существует много способов управления процедурой печати, некоторые из которых уже были описаны выше.

2- Для базы данных, в зависимости от вашей загрузки и параллелизма, вы можете выбрать другую базу данных. Oracle - потрясающий, но, возможно, самый дорогой. Итак, в конце вам нужно сравнить MySQL, который является фантастическим БД и в то же время бесплатным, и SQL Server Express Edition, который является бесплатной версией корпоративной / профессиональной версии Microsoft SQL Server. Express Edition - это, по сути, ограниченный выпуск той же базы данных, и если вам нужно расширить сеть и поддержку, вы не сможете позволить себе оплату корпоративного решения. Поэтому одна идея может заключаться в том, чтобы с самого начала придерживаться лучшей бесплатной базы данных, если вы предвидите такой спрос в будущем. Безопасность этих обеих баз данных как-то на одном уровне, но вам также нужно работать с ценными бумагами вашей сети / сервера, потому что мне было трудно их взломать.

3 - Использование Windows Communication Foundation (WCF) очень просто и легко, особенно если вы хотите использовать что-то вроде WPF. Вы в основном создаете некоторые контракты на данные и публикуете их, и это будет конечной точкой вашего общения. Вы в основном вызываете их, и имеете дело с ними, поскольку они являются вашими локальными методами. Настоятельно рекомендуется. Итак, что вы имеете в виду под несколькими клиентами? Означает ли это разные типы клиентов (например, веб-приложения, мобильные приложения и т. Д.)? Я также предлагаю взглянуть на веб-сервисы RESTful, так как они имеют такие же концепции коммуникации. Я только что упомянул некоторые имена, так что вы можете начать читать что-то о каждом из них.

1 голос
/ 05 апреля 2010

Относительно 1.

WPF имеет удобный элемент управления PrintDialog с методом PrintVisual. Это может использоваться для печати любых визуальных элементов из иерархии элементов управления WPF и может удовлетворить ваши требования к печати. ​​

Я разработал много приложений в WinForms и только несколько в WPF, но я бы очень сильно склонялся в направлении WPF для любой новой разработки. Это очень гибкий и мощный.

0 голосов
/ 05 апреля 2010

1 - На самом деле, WPF обеспечивает лучшую / более легкую печать документов / контроля, чем winforms.Кроме того, WPF по-прежнему поддерживает RDLC и другие решения для создания отчетов и печати.Спрашивать, стоит ли вам использовать WPF или WinForms, - это все равно, что спрашивать, следует ли вам есть лимон или лайм для витамина С. Независимо от того, какой вы используете, вы получите то, что пытаетесь сделать, но вкус и опыт будут сильно отличаться.

2 - База данных не является вашей безопасностью.Выбранная вами БД практически не повлияет на вашу безопасность.Лично я хотел бы взглянуть на безопасность Active Directory и домена и, в основном, позволить системе использовать учетную запись домена пользователя и группы доменов для контроля аутентификации и авторизации.

3 - Существует множество возможных решений для клиент-серверной инфраструктуры, и у каждого есть свои сильные стороны и недостатки, а также есть возможность использования веб-форм, которые вы даже не затрагивали.

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