У меня есть проект на VB. NET, ориентированный на версию 4.7.2. NET Framework. Это проект ASP WebForms (да, бедняжка), который развернут в IIS.
Сейчас я занимаюсь очисткой места. И я намеревался использовать автоматически реализованные свойства в классах моделей, чтобы уменьшить количество и без того слишком большого кода VB.
Он отлично работает при разработке. Но я не могу, хоть убей, понять, почему он не работает в производственной среде.
Проблема сводится к следующему классу a:
Public Class ValorAtributo
Public Sub New(codigo As String, descricao As String)
Me.Codigo = codigo
Me.Descricao = descricao
End Sub
Public ReadOnly Property Codigo As String
Public ReadOnly Property Descricao As String
End Class
В IIS производственный сервер выходит из строя в строке Me.Descricao = descricao
со следующим сообщением:
BC30456: «Descricao» не является членом «PesquisaAtributo.ValorAtributo».
Изучение развертывания IIS
Меня очень смущают все разновидности. NET и то, где именно они играют роль. Насколько я понимаю, IIS использует. NET CLR, а не. NET Framework. Но это, по крайней мере, половина сказанного, наряду с предыдущим сообщением, можно увидеть, что производственный IIS использует другую версию.
Microsoft. NET Framework Versão: 4.0.30319; Versão do ASP. NET: 4.7.3535.0
Это сбивает с толку, поскольку в файле веб-конфигурации упоминается только. NET 4.7.2.
<compilation debug="true" strict="false" explicit="true" targetFramework="4.7.2">
...
<httpRuntime targetFramework="4.7.2" maxRequestLength="15360"/>
To add to the confusion, the app pools on IIS only shows .NET up to 4.0 (CLR this time, no mention of .NET Framework I could find).
Atempting a solution
So I need (want) to use auto implemented properties. There must be a fix for this.
My informed guess is that this is caused by an outdated .NET Framework. However I'm not getting what exactly I should do. I've read conflicting versions of how exactly this works, IIS uses CLR vs uses .NET. In short, its a mess.
Can anyone of you highly efficient Microsoft devs enlight me in what am I missing here?
updates
looking further
There is a longer trace in the web version of the exception I missed when initially writing the post.
It is very long, SO was playing tricks, here is a pastebin for it. https://pastebin.com/1NhY6SMa
предыдущее, но похожее? проблема
VB автоматически реализовано Свойство не компилируется
неожиданно
Код ранее компилировался и работал нормально. Я мог бы попробовать и использовать git, чтобы попытаться выяснить, что произошло, но я могу сказать наверняка, что этот файл не менялся с тех пор.