Pull to refresh

Comments 10

«Это хорошо работает для отдельных настольных и веб приложений, но нет никакого способа для сборок, добавляемых в проект. Для проекта на .NET 4.0 сборка .NET 4.5 выглядит, как и любая другая .NET 4.0 сборка.»

Если я ничего не путаю, то к проекту с таргетом 4-ой версии не удастся подключить ни другой проект в солюшене с таргетом 4.5, ни внешнюю сборку .Net 4.5
VS 2011 это демо-версия VS 2012 для ознакомления разработчиков.
Вы тут не упомянули самую злую проблему. Как это выглядит у меня (а значит еще у пары десятков тысяч разработчиков):
Берем Visual Studio 2012. Создаём WPF приложение для .NET 4.0. Долго его разрабатываем и отлаживаем. Отдаём клиентам. Получаем много сообщений об аварийном завершении приложения со стеком в каких то дебрях XamlParser.EndInit, FrameworkElement.MeasureOverride, IStyleConnector.Connect, BindingExpression.ValidateExpressionType или чем нибудь подобном. Пытаемся отладить. Не удаётся воспроизвести исключение, ну ни как. После долгого чесания репы, естественно дело доходит до запуска приложения на виртуалке с Windows XP. Вот тут исключение и попадается. После этого-то и приходит понимание, что оказывается OH SHI~, отлаживалось то приложение под другую версию .NET!
Через удалённый отладчик ничего не видно, символы расходятся. Вместе со студией ставится 4.5. Т.е. из 2012 НЕЛЬЗЯ писать .NET приложения для версий ниже 4.5, потому, что нельзя их в принципе отладить! А в 2010 более новый проект без «даунгрейда» не открыть, а его штатного нету.
Короче, я цензурными словами это описать не могу. Я считаю эту ситуацию явной диверсией, с целью подставить разработчиков, которые пытаются добиться совместимости своих приложений с Windows XP, т.к. — сюрприиииз! Для XP .NET 4.5 нет и не будет.
а зачем пилить Net 4.5 для XP, которая уже отжила таки своё?
За два последних года общения с пользователями в рамках работы и вне-работы, ко мне ХР попадала в рамках программы «а можно сюда Win7/8 поставить, или лучше купить новый комп ужк?»
Проблема в том, что XP стоит на огромном множестве клиентских машин. Особенно если это предприятия. Заставить предприятие обновиться — невозможно.
Это проблемы ИТ департамента конкретного предприятия.
Те кто хотят держать свой ИТ парк в безопасности давно перешли на 7
Проблема не в ИТ департаменте, а в руководстве, которое не выделяет деньги. А зачем? Работает? Работает.
Как раз-таки, насколько помню, async/await — это языковая фича C# и не нуждается в .Net 4.5. Просто нужна еще runtime-поддержка на уровне библиотеки (TaskBuilder, кажется). Есть даже NuGet пакет Microsoft.Bcl.Async, который позволяет использовать эту фичу на .Net 4.0.
И вообще, 4.5 работает на CLR 4.0.
Sign up to leave a comment.

Articles