В течение некоторого времени я собирал приложения уровня n, используя сервер базы данных в качестве уровня данных, Winforms в качестве уровня представления и веб-сервис ASP.NET asmx в середине для отправки туда и обратно нетипизированных наборов данных. Хотя этот подход до сих пор работал для меня, сегодня он определенно чувствует себя устаревшим.
Какие технологии мне следует использовать, если бы я создавал подобное архитектурное приложение сегодня? Технология .net 4.0 приветствуется.
Я все еще хочу, чтобы в качестве источника данных использовался сервер базы данных, и веб-сервисы asmx, вероятно, должны быть заменены WCF. Я все еще хотел бы, чтобы уровень представления выполнялся как настольное приложение (Winforms или WPF), поэтому проигнорируйте ASP.net для этого вопроса.
Мой главный вопрос сводится к тому, что использовать в качестве бизнес-объектов. Я хочу что-то, что легче привязать к интерфейсу, чем нетипизированные наборы данных, и наборы данных со строгим набором данных кажутся очень тяжелыми. Мне также нужно что-то, что может отслеживать изменения, чтобы пользователи не перекрывали изменения друг друга в базе данных.
Будет ли Entity Framework 4 использоваться для сценария, подобного этому?
Есть ли в наличии подробные руководства?