Недавно у меня было веб-решение C#, в котором мне пришлось перейти с .NET 3.5 на .NET 4.5, чтобы повысить безопасность TLS 1.2. Я изменил настройку сборки в свойствах каждого проекта решения, которое теперь отлично строится. Я также могу нормально обновить код, но теперь я не могу внести какие-либо изменения в файлы ascx.cs для любых пользовательских элементов управления. Если я это сделаю, возникнут ошибки сборки.
Я искал решения для сообщения об ошибке, которое я получаю: значение атрибута «compilerVersion» в параметрах поставщика должно быть «v4.0» или более поздней версии, если вы компилируете для версии 4.0 или более поздней версии .NET Framework.
но все они говорят удалить или обновить тег компиляции в веб-конфигурации. Я попытался удалить его, и это не сработало, и тег показывает 4,5 и ниже 4,0, как и ожидалось. вот теги в веб-конфигурации
<compilation targetFramework="4.5">
<assemblies>
<add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Web.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
<add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=[some token]"/>
</assemblies>
</compilation>
<pages controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID"/>
Если это имеет значение, то это набор модулей для dotnetnuke (и публикация на Dnn7 работает нормально, я просто снова не могу внести изменения в пользовательские элементы управления, мне нужно это сделать для поддержки программного обеспечения)