Андрей: из модели представления, для которой вызывается рендеринг Layout. То есть юзера лучше получать еще на уровне контроллера. А метод его получения из Auth-контроллера вынести в сервис.
Виталий: Да, с 2004 года, если говорить о Mono, и с прошлого года - .NET Core.
Как я говорил уже ранее, я не вижу смысла лично вас убеждать. Но тот, кто нагуглит вопрос, должен быть в курсе, что если JavaScript - это необходимое зло на фронте (которое тщетно пытаются завернуть в фантик различными трансляторами), то на бэкенде же есть туча других интересных технологий.
sim3x: > как вариант для менее болезненного запуска приложения, которое написано (только) для виндовс.
Например Banshee ориентирован на Linux (стабильные версии) и некоторое время был в стандартном наборе софта Ubuntu.
> дать как-то существенный бонус
Удобный "стандартный" язык уже есть, модульная архитектура - будет. Инфраструктура так же развивается. Причем, .NET вырос в реального конкурента Java даже при условии проприетарности технологии. Что будет дальше - увидим =)
Neyury: Адрес функции передается без параметров (можно туда вписать лишь типы, но это не обязательно). Соединение сигналов со слотами работают таким образом, что сигнал как бы вызывает слот и передает ему свои параметры, с которыми эмиттится сигнал (аргументы) в аргументы слота. То есть у сигнала и слота сигнатура должна совпадать. Если она не совпадает, то при старом синтаксисе (с макросами SIGNAL/CLOT) они игнорируются, а при новом (три параметра с крайним типа Functor или через явные адреса функций) будет ошибка компиляции. В данном случае QPushButton::clicked не имеет параметров, потому и вмоей лямбда-функции их нет (круглые скобки можно опускать).