Не совсем, основная задача, сделать свойства доступными в XAML, и естественно DP поддерживают INP и биндинги. Обычные свойства, сделаны в качестве оберток над DP.
Кстати самое интересное, конструктор не создает экземпляр фактически, конструктор необходим для первоначальной инициализации, конструктор вызывается, когда экземпляр создан, в конструкторе вы не разместите код, который запретит создание экземпляра и не вернете другой. Оператор new и создает экземпляр.
AndNovak: Для начала бы почитали про паттерны, часто используют MVVM, Dependency Injection, Repository. Плюс деление приложения на слои(отчасти MVVM тоже делает это). Запрос WPF MVVM Entity framework в гугле выдал кучу примеров, посмотрите примеры, единственное там во всех примерах не вынесен слой данных в репозиторий или сервис ( на мой взгляд не всегда это надо, особенно если точно уверены, что БД всегда будет единственным хранилищем), по всем MVVM фреймворкам есть также описание и примеры.
Про ASP тут тоже не так все просто, и тенденции больше сводятся к WebAPI+SPA.
Алексей Немиро: Каких разновидностей то? если посмотреть на зоопарк C++ там еще хлеще, куча компиляторов, да и не всегда строго придерживаются спецификации. Я не мучаюсь, у меня ни разу не было, чтобы я не смог, что то собрать. Других производителей C# нет, Xamarin вместе с Mono куплены MS, остальные проекты (dotGNU) загнулись давно. Ну извините, язык развивается, естественно выходят новые версии, зоопарк этот неизбежен, эта картина не только у MS, это везде. Недавно надо было восстановить доступ к сайту на древней джумле (дело было в корпоративной сети), на хостинге стоял древний PHP, мне пришлось искать какая версия будет под ним работать. Это везде так. Не хотите, чтобы пользователи ваших проектов мучились, пишите на старых версиях, хотите последних достижений языка, предупреждайте в чем собирать. Вы под Linux ничего не собирали из исходников, когда какой нибудь калькулятор просит обновить Qt, пол KDE и так далее(немного утрировано, но все же)
babaevmm: для написания SPA приложений, в шаблоне уже есть настроенная авторизация, по кукисам и авторизация по токену (для SPA приложений). Те. пользователь авторизируется на сайте, и может получить токен для доступа к WebAPI.
Алексей Немиро: ну так это со всеми языками так, сложно требовать от старого компилятора поддержки новых фич. Тяжело же требовать от какого нибудь GCC 2012 года, поддержки С++14. Кстати MSBuild всегда использует самую свежую версию языка(ведь CIL будет совместим с любой версией .NET). А вам, чтобы лишний раз не мучатся, в свойствах сборки проекта, есть кнопка "Дополнительно", там принудительно можно указать, языковую версию для сборки.