Я работаю над многопользовательским программным обеспечением телефонного банка. Изначально я планировал использовать Windows Communication Foundation. Однако я использую Visual Basic 2010 Express, и хотя я могу создавать клиенты WCF, я не могу создать сервер WCF. Будучи студентом колледжа, у меня нет денег на Visual Studio 2010 Professional, и, хотя он доступен в рамках программы DreamSpark, условия лицензирования не позволяют использовать его в коммерческих целях (я надеюсь разработать недорогую систему телефонного банка). [это не домашнее задание; на самом деле я студент-бухгалтер]).
Есть ли альтернативы WCF, которые я могу использовать? Мой предлагаемый дизайн приложения выглядит следующим образом:
- Задание, созданное на сервере, на котором есть все телефонные номера для вызова из базы данных (то есть человек, создающий задание, из общей базы данных может создать отфильтрованный список телефонных номеров для вызова). Эти номера ставятся в очередь.
- Клиенты подключаются к серверу, регистрируются. Когда каждый клиент подключается, ему передается номер из очереди.
- Когда каждый вызывающий абонент завершает вызов, он нажимает кнопку, указывающую на ответ на этот вызов. Затем клиент отправляет сообщение об обновлении на сервер и получает в ответ следующий номер в очереди.
Я размышляю здесь, но нельзя ли использовать базу данных SQL как для общего списка, так и для отфильтрованного списка? То есть каждый список находится в своей собственной таблице и имеет переменную, указывающую на следующую запись базы данных в отфильтрованном списке. Когда клиент запрашивает запись, он отправляет следующую запись, а когда клиент обновляет запись, он может отправить оператор SQL, вносящий соответствующее изменение.
Я слышал о транзакциях и кэшировании, нужно ли их использовать для приложения такого типа? Если да, то как бы я?
Тогда я бы использовал System.Net или что-то подобное для подключения клиента к серверу, верно?
Спасибо за вашу помощь!